使用信鸽的过程,感觉一路艰辛,各种坑,想必各位使用过的也是深有体会的吧。而且官方文档也太简洁了。demo功能也不全,没办法只能自己摸索着来,这不刚把自定义通知弄明白,就给各位看官献上来了。
1. XGPushManager功能类
自定义本地通知样式
void setPushNotificationBuilder(Context context, int notificationBulderId, XGPushNotificationBuilder notificationBuilder)
本地通知,调用下面这个方法,就可以起来一个推送通知
long addLocalNotification(Context context, XGLocalMessage msg)
2 如何自定义通知
这里主要就是需要构造一个XGPushNotificationBuilder
XGCustomPushNotificationBuilder build = new XGCustomPushNotificationBuilder();
build.setSound(
RingtoneManager.getActualDefaultRingtoneUri(
context, RingtoneManager.TYPE_ALARM)) // 设置声音
// setSound(
// Uri.parse("android.resource://" + getPackageName()
// + "/" + R.raw.wind)) 设定Raw下指定声音文件
.setDefaults(Notification.DEFAULT_VIBRATE) // 振动
.setFlags(Notification.FLAG_NO_CLEAR); // 是否可清除
// 设置自定义通知layout,通知背景等可以在layout里设置
build.setLayoutId(R.layout.layout_notification);
// 设置自定义通知内容id
build.setLayoutTextId(R.id.ssid);
// 设置自定义通知标题id
build.setLayoutTitleId(R.id.title);
// 设置自定义通知图片id
build.setLayoutIconId(R.id.icon);
// 设置自定义通知图片资源
build.setLayoutIconDrawableId(R.drawable.ic_launcher);
// 设置状态栏的通知小图标
build.setIcon(R.drawable.ic_launcher);
// 设置时间id
build.setLayoutTimeId(R.id.time);
// 若不设定以上自定义layout,又想简单指定通知栏图片资源
build.setNotificationLargeIcon(R.drawable.tenda_icon);
3如何使用我们自定义的通知
这个是替换默认的通知,build是上面的那段代码的,这样通知就是使用我们自定义的形式了。
XGPushManager.setDefaultNotificationBuilder(context, build);
4 启动本地通知
XGLoca