应用研发平台EMAS 测试反馈,推送4条 只能收到1条,是什么原因?
"APP在线:
1,初始化是否成功,若失败重点检查阿里云后台和app参数是否对(appkey,密码,应用包名)
2,检查前后端channel是否一致: https://help.aliyun.com/document_detail/67398.html
3,设备通知状态是否打开
APP离线
1、离线存储是否打开,参考文档:https://help.aliyun.com/document_detail/434778.html 中的StoreOffline
2、设备通知状态是否打开
3、厂商配置是否正确,参考文档:https://help.aliyun.com/document_detail/430567.html
4、厂商token是否正常获取,pushService.setLogLevel(CloudPushService.LOG_DEBUG) 过滤日志字段MPS,参考文档:https://help.aliyun.com/document_detail/57105.htm 对应的厂商通道文档
5、辅助通道必传参数是否填写:AndroidPopupActivity、AndroidPopupTitle、AndroidPopupBody,参考文档:https://help.aliyun.com/document_detail/57105.htm
6、检查前后端channel是否一致: https://help.aliyun.com/document_detail/67398.html
以上排查检查没有问题,提供appkey、消息id、设备id
你先升级下 3.8.7版本, 文档正在准备
此回答整理自“应用研发平台EMAS开发者交流群”。"
用研发平台 EMAS 测试反馈,推送 4 条只能收到 1 条,可能有以下几个原因:
如果您在使用应用研发平台EMAS进行推送时,发送了4条推送消息但只收到其中1条,可能有以下几个原因导致:
设备注册问题:确保您的设备已成功注册并与EMAS建立了有效的连接。某些情况下,设备可能无法正常注册或连接到EMAS服务器,导致无法接收到所有的推送消息。
网络连接问题:检查设备的网络连接是否稳定。如果设备处于较差的网络环境下,可能会导致推送消息丢失或延迟。
推送消息设置问题:请确保您在EMAS平台上正确配置了推送消息的目标设备、推送条件和推送内容等参数。如果某些设备未被正确指定为推送目标,那么它们将无法接收到对应的推送消息。
推送服务限制:某些情况下,移动设备的操作系统或供应商可能会施加一些限制,如推送数量限制、频率限制等。这些限制可能会导致您无法同时接收到所有的推送消息。
其他问题:还可能存在其他因素导致部分推送消息无法正常到达设备,如设备的通知权限设置、设备的操作系统版本等。
Android端推送失败的排查步骤及解决方法。
首次接入推送不成功
首次接入推送不成功时,您可以参考以下步骤,定位并解决问题:
检查推送通道是否初始化成功,确保您在初始化时,注册的onSuccess回调函数能被成功调用。
如果推送通道初始化失败:请查看错误日志以及错误码,按照错误提示,检查appKey、appSecret等相关配置。
如果发送的是消息,则不会在客户端通知栏弹出展示,需要客户端实现消息回调,自定义消息的展示方式。
使用官方Demo进行测试,排除自身配置问题。使用官方Demo时,需要设置您自己的appKey、appSecret并修改包名。如果使用官方Demo测试无问题,请确认下自己的实现和Demo的区别。
如果您的设备集成了阿里云移动推送Android SDK,设备上日志显示初始化成功,控制台显示设备在线,但是出现推送失败问题,请检查参数是否符合规范。
您APP的versionName参数和versionName参数不能为null,同时长度不能超过32位。如果versionName参数不符合要求,请更改versionName参数。
说明:修改后务必先卸载原有App然后重新安装,不要直接覆盖安装。
如果集成成功,请向设备推送通知,发现通知显示已到达,但设备端并未弹窗显示。请确认推送的是通知还是消息,只有通知才会在通知栏创建通知,消息不会创建通知,需要用户在SDK端的onMessage接口中自行处理。如果自定义接收器没有收到数据,请检查自定义接收器是否注册。
推送消息,设备端日志显示已经收到推送,但用户回调未被调用。推送消息在客户端上的路由过程涉及到发送应用内广播,部分设备存在广播拦截,请确认您的设备是否存在该问题:
下图是正常情况下的日志,第一条handleRemoteMessage日志说明消息已经到达客户端,第二条AgooMessageReceiver日志表明用户自定义receiver已经接收到广播。
成功接入后出现异常
推送通知,如果有设备能收到,有设备不能收到,请检查不能收到通知的手机设置情况,是否将推送App的通知弹出进行了限制。
如果出现应用处于前台可以收到推送,应用在后台后无法接收到推送的情况。请检查channel进程是否执行了推送初始化操作。
判断channel是否执行初始化方法:
查看channel进程是否有如下日志输出,如果没有,则表示未执行相应初始化操作。
利用推送排查系统排错:
获取设备deviceID,对deviceID单独推送一条,登录移动研发平台EMAS,单击移动推送,选择对应的项目,然后单击排查工具即可。
如果推送排查页面显示未知错误,请确认测试设备是否关闭了推送通道,即是否调用过turnOffPushChannel接口。如果是,必须再次调用turnOnPushChannel接口重新打开推送通道。
使用测试环境appKey测试正常,切换成正式环境appKey(测试和正式环境appKey对应相同的包名)之后收不到推送。SDK在初始化过程中有本地请求缓存,更换appKey后需清理本地缓存或卸载测试环境App重新安装正式环境App。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。