问题描述
现象:每次有新消息到来时,状态栏提示的信息都是一闪而过,我直接运行官方的demo也是如此。目前未解决:(手机,魅族MX4,系统版本5.1.1,经测试直接扫码安装的3.1.1的APK也有问题)偿试过的方法有以下几个:1、修改AndroidManifest.xml中的category android:name="com.hyphenate.chatuidemo"为自己的包名,无效。2、将GCMPushBroadCast内容修改弹出正常内容,无效。修改notifyID发送为0,仍无效。DemoHelper中,覆盖方法easeUI.getNotifier().setNotificationInfoProvider(new EaseNotificationInfoProvider(){})仍然无效。Debug能进,但是消息总是一闪而过。求环信的大神告知是怎么回事。
解决方案
来晚了,刚才已经找到解决方法了。是环信把方法顺序用反了。if (isForeground) { notificationManager.notify(foregroundNotifyID, notification); notificationManager.cancel(foregroundNotifyID); } else { notificationManager.notify(notifyID, notification); }----------------------------------------------------if (isForeground) { notificationManager.cancel(foregroundNotifyID); notificationManager.notify(foregroundNotifyID, notification); } else { notificationManager.notify(notifyID, notification); }应该是先清除原记录,再发送新记录。所以之前每次收到消息一发出来就被清除掉了。环信的哥们,这个好折腾人啊。。。
解决方案二:
EaseNotifier类中sendNotification(三个参数的)方法中 将notificationManager.cancel(foregroundNotifyID);这行代码注释下。