关于极光推送,部分手机收不到的分析

关于极光推送,部分手机收不到的分析

最近查看了一下极光后台,发现有很多安卓手机消息发送成功

但是送达失败,索性去看了激光文档以及社区

Android

  1. 「为什么应用程序无法收到 Push 消息(Android)?」
    • 确认 appKey(在Portal上生成的)已经正确的写入 Androidmanifest.xml
    • 确认测试手机(或者模拟器)已成功连入网络(可以切换网络来判断是否该网络运营商有问题)
    • 确认有客户端 "Login succeed" 日志(表示集成成功)
  2. 「推送成功了,为什么有部分客户端收不到推送?」91

    • 请检查收不到通知的手机:
    • 请 在logcat查看日志,确定客户端的jpush是否集成成功,网络是否有问题
    • 请看日志或使用接口 isPushStopped来检查 是否调用了stoppush
    • 检查手机的JPush高级设置中是否设置了“允许推送时间”
    • 手机的应用中是否勾选了“显示通知”
  3. 「Android是不是要求后台进程不能关,才能收到推送?」
    「Android处于后台/黑屏状态下收不到推送」

    • 请自行确认收不到的时候长连接是不是已经断开,Android是长连接的机制,必须app和极光服务器建立了连接才能收到推送;断网、关机、进程不在、主动调用了stopPush服务等,长连接都会断开,都没法收推送。
    • 长连接状态的判断219
    • 极光的sdk会有自启动机制,也支持进程间互相拉起功能,但是会受到系统本身的限制
  4. 「Android 中极光推送后台服务被杀死后不能自动重启」

    • android原生系统,没有 root,用 home 键上滑杀进程等其他系统自带的停止方式,都可以自启动,一般10s内恢复。但如果是强行停止就只能用户自己手动开启应用
    • 如果是miui等第三方应用,杀了进程默认无法自启动
    • 如果是root过的原生系统,杀了进程也是没有办法自启动的,这个时候推送是收不到的
    1. 「关于应用长存的探讨」
      「Android 第三方Rom的限制说明」196
      「部分系统的特殊限制问题」129
      「EMUI4.1手机系统权限说明」67:需要注意手机自带的手机管家里面,有省电选项
      「魅族和小米:有个消息盒子」,将一些不重要的信息或者屏蔽的信息放在里面
      如何让消息盒子的消息正常显示在通知栏

      「奇酷【360 OS】手机默认是不允许通知:」

      • 应用通知管理:开启“允许通知”后才能显示通知。
      • 冷藏室:应用被加入冷藏室后,会被自动结束进程,就收不到消息了。
    2. 「为什么微信或者 QQ 等应用看似可以保证不被杀死或者杀死后可以收到消息」

      • 如果将他们完全彻底的杀死,也是收不到的,这是肯定的
      • 只是:他们很难被杀死,即便杀死后也会以较快的速度重启:我们(用户)会下意识的在手机里开启对他们的保护;他们是不少手机系统的自带软件。

猜你喜欢

转载自blog.csdn.net/zhangbijun1230/article/details/89465250