问题描述
为什么iOS9在后台,会收到两条重复的消息,在前台却不会,是否APNS也发送了过来?didReceiveMessage:(EMMessage *)message 只调用一次。同时还有,APNS离线推送也收到两条同样的消息。(以上iOS8、iOS7都不会出现这样的问题)
解决方案
也遇到过这样的问题,事实是本地推送就发了一次
解决方案二:
也遇到了这样的问题,打印出来的是环信给推送了两次,但是聊天信息里面显示又只有一条。。。
解决方案三:
在后台,didReceiveMessage回调会走,说明长连接还没有断开,这时候是不会走APNS的。你检查一下是不是发了两次本地通知。
解决方案四:
我这边iOS9.1测试demo,没有复现。你那边可以重现吗,确认一下是apns还是本地通知,打印一下推送的内容。
解决方案五:
我这边还是复现不了,你确认一下收到推送的内容,消息id,消息内容之类的,提供一下log看看吧
解决方案六:
我也是重启一下好了
解决方案七:
如果是离线推送收到两次,但打开app只收到一条消息,这种情况环信的服务是正常的,是由苹果的apns推送服务近期出现的重复推送的问题;如果离线推送一次打开app收到两条消息,则是接收方的代理注册了两次或是didreceiveofflinemessage回调方法设置了两次同样的代码,这种情况其实消息只有一条,只是由回调方法处理了在UI上显示了两条。如果重启之后解决了问题,还请关注之后是否依然有相同的情况出现,及时与我们联系。感谢对环信产品的关注与信任。
解决方案八:
如图中,加个return,这里不用再注册一次了,亲测可行
解决方案九:
我遇到过类似的,其实就是注册推送注册了两次,在iOS9之前,两次也没事,iOS9之后就不行了,所以保证一次就行了。还发现个比较奇葩的问题,只有软件运行的第一次,注册两次会有影响,当软件运行过第一次后,在下次运行的时候注册两次就没有问题。很奇葩。