注册

iOS为何收不到离线推送,同样的推送证书通过极光能够收到推送,通过环信就收不到?怎么解?

环信后台:

7C5DBA97-A074-4D6F-B8B0-7E0390F8C7B0.png



D8D09029-2174-4BB7-ABF6-3C29A8DF4CA7.png



301C5B74-00AC-459E-9B97-3F90B5F288E6.png



3425590F-7318-42B3-8663-6E95DBBE21C8.png


求解?哪里出错了?
已邀请:
刚刚在工单中回答过你的问题, 这里也发下把 ,首先排查下以下几点,看下你那边是否有问题
1.测试apns推送的时候,接受消息方的app是杀掉状态吗,或者进入后台三分钟以后
2.看看你环信后台上传的证书名称 与 工程中初始化SDK那里填的证书名 是不是相同的
3.配置证书时候填的id 与你工程中的bundle id 是相同的吗
4.devicetoken有没有传给环信SDK
5.确认Xcode环境是否配置正确 ,Build Settings---signing,看Debug对应的是不是开发的,Release对应的是不是生产的
6.在确认xcode运行环境是否正确 (Product-->Scheme-->Edit Scheme, 开发证书选Debug,生产证书选Release)
7.配置证书的时候是否设置了密码以及证书制作上传过程是否有问题,正确的步骤可以参考:http://www.imgeek.org/article/825308748。另外可以用推送工具进行验证。
 
下面是另一个帖子里你问我的,我也在这里一起回复了吧
如果app集成时添加
- (void)applicationDidEnterBackground:(UIApplication *)application {
[[EMClient sharedClient] applicationDidEnterBackground:application];
}
- (void)applicationWillEnterForeground:(UIApplication *)application {
[[EMClient sharedClient] applicationWillEnterForeground:application];
}
App后台静默后,能够保持长连接3分钟左右。超过3分钟,长连接会断开,当前登录的账号,在服务端被认为离线。之后接收的消息会在再次登录后,投递给此用户。所以当app被杀死或者进入后台三分钟之后走的是离线推送

app的长连接存在的时候(包括进入后台三分钟之内),环信服务器检测您为在线状态,是不会给您推送消息的,所以就需要您的app做一个检测,当收到消息回调的时app处于在后台,就通过代码实现一个本地的通知。

要回复问题请先登录注册