一、 收到重复的推送内容
收到重复的推送内容,排除了业务自身的推送逻辑之外,重点介绍一下部分机型多渠道推送可能带来的重复推送问题。
对于Android系统,对于设备已经在某些三方系统中注册过,并且通过该三方推送接入了厂商ROM通道,会出现重复推送的问题,原因是:
三方推送接口功能开放不足
- SDK中未提供停止推送的接口
- 服务端未提供历史设备清理接口,导致三方推送后台仍然将这些设备保留在推送列表中
这种情况下,如果同时对阿里云推送和三方推送通道推送消息,即使新版本App没有集成三方推送的SDK,也会导致收到重复的内容
- 对于iOS系统,由于APNS也是ROM级的推送通道,对于没有提供停止推送接口,也没有提供历史设备清理接口的三方推送,也会收到重复推送内容
解决办法
- 请有问题的三方厂商提供SDK端停止推送接口,并在新版本App中调用停止推送接口
- 请有问题的三方厂商提供历史设备清理接口,将不需要推送的设备清理掉
- App升级完成后,停止向有问题的三方厂商推送
二、 收不到推送内容
Android系统由于系统ROM的限制,无法确保消息一定送达,对于无法送达的情况,常见的改进方法有:
- 对于华为、小米等机型,接入辅助通道
- 设置合理的离线消息存储时间
- 使用移动推送的短信复合推送功能
对于其他异常情况