美文网首页推送
极光推送集成厂商踩坑

极光推送集成厂商踩坑

作者: 程序员阿兵 | 来源:发表于2020-11-03 18:41 被阅读0次

    项目需要 替换原有推送 改成极光推送加厂商渠道,集成极光推送 很简单,这里不再多介绍。接下来说一下极光的厂商对接流程:

    首先极光推送对各个厂商通道对接是没有在开发者平台提供文档的,需要申请VIP资格后,极光才会提供对应对接文档。

    2.1小米通道对接:

    • 1.在小米开发者平台申请对应推送账号 appId key 等

    • 2 增加小米插件包及小米推送包

    • 3 配置小米推送sdk所需要的权限

    • 4 配置小米必须的组件

    • 5 配置JPush接受的小米sdk的消息接受类

    • 6 将XIAOMI_APPKEY与XIAOMI_APPID替换为在小米后台注册对应该应用的AppKey/AppID

    小米的流程相对简单 根据提供的vip 文档复制粘贴就行了。

    2.2华为通道对接:

    • 1添加 Huawei SDK 到项目中
    • 2 配置接收 HMS 消息的广播接收器
    • 3 在build.gradle中配置在华为后台添加的指纹证书对应的签名

    添加 Huawei SDK 到项目中

    • 拷贝third-push/huawei/libs中的插件包(jpush-android-plugin-huawei-v3.x.x.jar)到工程libs目录下

      • 注意:也可使用jcenter集成方式,无需拷贝jpush-android-plugin-huawei-v3.x.x.jar文件,也无需配置cn.jpush.android.service.PluginHuaweiPlatformsService组件

      • 示例:implementation 'cn.jiguang.sdk.plugin:huawei:3.x.x'

    • Huawei 上创建和 JPush 上同包名的待发布应用,创建完成后下载该应用的 agconnect-services.json 配置文件并添加到应用的 module 目录下。

    • 在根级 build.gradle 中添加规则,以纳入 HMS 服务插件 和 华为 的 Maven 代码库,可根据华为开发者联盟发布的版本更新选择最新版本:

     ldscript {
            repositories {
                google()
                jcenter()
                maven {url 'http://developer.huawei.com/repo/'}
            }
        }
       buildscript {
           dependencies {
               classpath 'com.huawei.agconnect:agcp:1.2.1.301'
           }
       }
      
        allprojects {
            repositories {
                google()
                jcenter()
                maven {url 'http://developer.huawei.com/repo/'}
            }
        }
    
    
    
    • 在应用 module 的 build.gradle 文件底部添加 apply plugin 代码行,以启用 gradle 插件:
       apply plugin: 'com.huawei.agconnect'
    
    • 在应用 module 的 gradle 中 dependencies 节点添加如下代码,可根据 华为 发布的版本更新选择最新版本:
     dependencies {
           implementation 'com.huawei.hms:push:4.0.2.300'
           //引入极光-华为插件,如果采用此配置,无需拷贝jpush-android-plugin-huawei-v3.x.x.jar文件,也无需配置cn.jpush.android.service.PluginHuaweiPlatformsService组件
           implementation 'cn.jiguang.sdk.plugin:huawei:3.x.x'
                  
        }
    

    2. 配置接收 HMS 消息的服务

    <service
                    android:name="cn.jpush.android.service.PluginHuaweiPlatformsService"
                    android:exported="false">
                    <intent-filter>
                        <action android:name="com.huawei.push.action.MESSAGING_EVENT" />
                    </intent-filter>
                </service
    

    下面注意!

    :HMS 服务必须要求 app 签名才能注册成功。指纹证书是在终端采用keytool -list -v -keystore keystorefileName 获取偶对应的指纹证书.获取结果如下:

    image.png

    记得必须要签名后的包

     signingConfigs {
            release {
                storeFile file("release.keystore")//签名文件的path
                storePassword "123456"
                keyAlias "android.keystore"
                keyPassword "123456"
            }
        }
    
        buildTypes {
            release {
                minifyEnabled true
                proguardFiles 'proguard-rules.pro'
                signingConfig signingConfigs.release
            }
            debug{
                minifyEnabled false
                signingConfig signingConfigs.release
            }
        }
    
    

    下面是在华为推送平台去创建账号 信息以及config文件,华为开发者地址
    https://developer.huawei.com/consumer/cn/service/josp/agc/index.html?cid=1&tid=13&id=9249519184595935890#/myApp/103194983/9249519184596012000

    在我的项目中获取当前需要添加配置的参数


    image.png

    添加刚刚生成的sha256


    image.png

    拷贝你获取的参数 ,下载 agconnect-services.json

    • 讲下载的agconnect-services.json 放在主项目目录下:
    image.png
    • 根据配置运行查看log 是否配置成功
    image.png

    此时如果像上图那样 就表示成功了,但应该不会成功,嘿嘿,接下来 有两个坑点:

    • 极光推送平台需要配置你各推送平台申请的key ,但文档并没有说明:
    image.png
    • 对上面添加的agconnect-services.json 虽然放在主工程目录下了,并不一定能读取成功,这时候你还需要添加配置防止解析不到agconnect-services.json 导致初始化失败:
           <meta-data
               android:name="com.huawei.hms.client.appid"
               android:value="配置文件里面的appID"/>
           <meta-data
               android:name="com.huawei.hms.client.cpid"
               android:value="配置文件里面的cpid"/>
    

    其他通道类似小米一样根据VIP文档依次复制就行了,最终厂商通道点击通知activity 跳转都会进入:OpenClickActivity

    相关文章

      网友评论

        本文标题:极光推送集成厂商踩坑

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