消息透传,本地却查不到?..踩坑经验--

来源:互联网 发布:godaddy 7元域名 编辑:程序博客网 时间:2024/06/04 17:54

起因

前两天一个内部版app上线..结果悲剧了…
这版主要是新增消息部分. 通过使用个推来完成消息送达…

版本上线后出现了几个状况:
1.部分用户收不到通知.(无 APNS通知 ,无 透传消息.)
2.部分用户(有APNS通知, 无透传)
3.部分用户正常.
4.部分通过升级方式安装的用户, 重新安装app又好了.

经过

出现这个状况, 按理应该比较好查. 模拟一下状况, 重现 , 查日志就能定位了.

可是这次不同……我们迎来了iOS 10 …XCode 8 ….

(声明一点. 公司比较大 , 开发账号上注册设备已满.无法真机调试)

首先. 查看一下日志:

以前看日志是这样的:

log<iOS 10

iOS 10 是这样的:

log iOS 10

再者, 查看一下真机沙盒. 因为内部版用的企业账号打包.可以查看沙盒.

以前是这样的:

container <iOS 10
iOS 10 是这样的:

container iOS 10

WTF!…..

然后可以接触到的出问题的iPhone 全都 iOS 10 了….

然后不管如何模拟….都无法复现这个问题…

!!峰回路转

折腾了半天之后.在个推后台的查询别名处发现, 有些别名查不到clientId , 但是用另一台设备再登录后, 突然出现两个clientId…. 之前收不到通知的用户就能够收到了….

由此得出一个结论 个推的别名绑定 推测有问题.
这样收不到通知的用户的问题找到了….

但是..还有收到APNS 却看不到消息怎么回事…

终于, 不知道从哪里拿到台iOS 9 …..

赶紧看看沙盒:

contract

这用户名还有!!!带邮箱的!!!
表示完全不知道啊~….谁给埋了坑…

结果

如果消息推送出了问题:
1. 查一下别名是否绑定上clientId
2. 本地查找消息的SQL仔细研究下.(比如: 同一个用户,用户名可能不一致)
3. 客户端Sdk是否启动成功

0 0
原创粉丝点击