美文网首页
Android推送接入总结--个推版

Android推送接入总结--个推版

作者: cwzqf | 来源:发表于2021-01-06 21:28 被阅读0次

           android推送历来的诟病就不用多说了,这么多年过去了还是开发者的一大头疼之事,虽说有第三方推送平台,但是如果要实现离线推送,也就是应用进程被销毁后,仍能收到推送,这一块的话目前只能充钱,就可以使用到个推为我们集成了各个厂商的推送渠道这个服务,提高离线通知到达率,本文也是讲的个推多厂商渠道接入碰到的一些问题,与大家分享。

    1 文档需要一字一句的看

           首先是申请各大平台的渠道参数,包括key、secret等,其中华为需要指纹证书和生成的json文件,注意华为填写SHA5值一定要与App一致,否则会报如下错误
    get hms token failed:6003: certificate fingerprint error

    2.注意包名是否正确

           可能你这时候是在测试环境进行开发,所以包名有可能会有后缀,比如.debug,这样就造成了包名与你在个推上配置的不一样,同样也会收不到推送

    3.部分厂商机型需要特殊配置

           比如oppo需要在点击通知打开的目标页面对应的manifest添加action,当然export = true也是不可少的

         <activity
                android:name=".SplashActivity"
                android:exported="true">
                <intent-filter>
                    <category android:name="android.intent.category.LAUNCHER" />
                    <action android:name="android.intent.action.oppopush" />
                    <category android:name="android.intent.category.DEFAULT" />
                    <action android:name="android.intent.action.MAIN" />
                </intent-filter>
         </activity>
    

           配置完毕后,进入测试,这里还会碰到各个厂商系统的差异导致的一些问题,也希望抛转引玉,希望有解决方案的小伙伴分享下:

    • 离线通知属于系统级别的通知通过厂商渠道下发,这时候小米和OPPO是没办法通过调用cancel或者cancelAll的Android SDK方法来清除通知,这点目前没找到原因和解决办法
    • vivo在notification channel默认关闭,但是我们Android SDK并没有检测该开关的代码,所以目前也只能线下的用户引导进行开启,否则也是收不到通知
    • oppo在点击一条离线通知后可以正常跳转,点击另一条就无法跳转,也已经在intent配置了lauchFlag,在oppo上依然无效。
         以上差不多就是我这次接个推的问题总结,有问题可以评论处一起讨论。

    相关文章

      网友评论

          本文标题:Android推送接入总结--个推版

          本文链接:https://www.haomeiwen.com/subject/remooktx.html