java使用环信信息推送,环信推送详解

一. 离线推送

如果app集成时添加

- (void)applicationDidEnterBackground:(UIApplication *)application {

[[EMClient sharedClient] applicationDidEnterBackground:application];

}

- (void)applicationWillEnterForeground:(UIApplication *)application {

[[EMClient sharedClient] applicationWillEnterForeground:application];

}

App后台静默后,能够保持长连接3分钟左右。超过3分钟,长连接会断开,当前登录的账号,在服务端被认为离线。消息会存入离线消息空间,之后接收的消息会在再次登录后,连接上服务器,然后通过长连接把消息取走,投递给此用户。如果app配置了推送证书,上传了推送证书并且集成了推送功能,服务器会给接收方发一个APNs推送,则会对离线消息进行APNs推送提示消息内容,通知接收方有一条新消息。

如果想自定义推送的alert,可以在发消息的时候,在消息扩展中添加相应的字段。文档见:http://docs.easemob.com/im/300iosclientintegration/apnscontent

所以这里推送说的是当app被杀死或者进入后台三分钟之后的离线推送

消息回调 :app在前台及app进入后台三分钟之内

注意:环信支持推送消息,只是目前还不能根据标签推送给特定用户组,也暂不支持推送模板。CMD消息没有推送,好友请求也没有推送

收不到离线推送时可以从下面几个方面找下原因

1.测试apns推送的时候,接受消息方的app是杀掉状态吗,或者进入后台三分钟以后

2.看看你环信后台上传的证书名称与工程中初始化SDK那里填的证书名 是不是相同的

3.配置证书时候填的id与你工程中的bundle id 是否相同

4.devicetoken有没有传给环信SDK。即查看管理后台中,对应 IM 账户下是否有您刚刚写的证书名。(如果没有,请检查您是否得到了 deviceToken)

5.确认Xcode环境是否配置正确 ,Build Settings---signing,看Debug对应的是不是开发的,Release对应的是不是生产的

6.在确认xcode运行环境是否正确 (Product-->Scheme-->Edit Scheme, 开发证书选Debug,生产证书选Release)

7.证书制作上传过程是否有问题,配置证书的时候是否设置了密码,正确的步骤可以参考:http://www.imgeek.org/article/825308748。另外可以用推送工具进行验证。

8.如果以上都没有问题,可以尝试重新制作上传一下推送证书。

对照这些检查一下,基本上就是这些原因

如果上面几点都符合的话,看下重新登录之后是否可以收到之前收不到推送消息

可以的,话提供一下AppKey,证书名 (查下证书是否被封)以及收不到的推送消息的消息id及发送方和接收方log

log导出请看这篇文章: http://www.imgeek.o

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值