集成

管理后台配置

本节将为您介绍如何在管理后台进行配置,并向手机端下发推送消息,管理后台具体使用,请参见使用控制台

推送配置

  1. 登录 TMF 控制台,并进入消息推送模块,在左侧导航中,单击推送配置,可配置“Android 厂商通道”和“iOS 推送证书”。
  2. 在“推送配置”页面,选择“Android”,分别填写“小米、华为、OPPO、vivo”厂商通道所需配置内容,即可使用厂商通道,单击确定,即可保存。

    说明:配置所需内容的获取方式参考 Android 厂商通道参数申请指南

  3. 配置完成后,在模块右上方,单击配置,可再次编辑。

创建通知栏消息推送

  1. 登录 TMF 控制台,并进入消息推送模块,在左侧导航中,单击创建推送
  2. 在创建推送页面,选择“Android”,填写相关配置,创建 Android 通知栏推送任务,通过右侧的手机示意图可查看通知栏效果,配置完成后,单击下一步,配置推送对象,进入推送对象配置页面,具体操作,请参见数据同步 > 使用控制台

字段说明:

  • 通知标题:通知栏首行标题。

  • 通知内容:通知栏内容。

  • 点击通知后操作:可选择打开 应用/客户端自定义/URL 三种不同的打开效果。

    • 应用 :即打开首页。

    • 客户端自定义 :即打开应用中的某个页面,需填入以 intent:// 为 scheme 的 URI,并在 AndroidManifest.xml 文件中为对应的 Activity 配置 intent-data。

      例如页面的 URI 为 intent://hello/world 的情形,配置对应的 Activity:

      <activity
      android:name="xxx.xxxxx.xxxxActivity"
      android:exported='false'
      tools:ignore="AppLinkUrlError">
        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <data
                android:host="hello"
                android:path="/world"
                android:scheme="intent" />
        </intent-filter>
      </activity>
      
    • URL :打开网址链接或是其他 URL

  • 附加参数:可添加一个或多个 key-value 值,用于其他效果配置。

推送任务管理

  1. 登录 TMF 控制台,并进入消息推送模块,在左侧导航中,单击推送任务
  2. 通过“推送列表”顶部的“平台”进行平台筛选,默认为全部,在对应推送任务右侧操作栏,单击查看发布详情,可查询推送任务发布详情。 push_msg

接入推送 SDK

前置条件

需要安装 Java 开发环境 JDK、Android SDK 及 Android Studio IDE 综合开发环境,完成通用部署。

添加 SDK

依赖其它组件模块如下:

包名或组件 是否必须 说明
基础库 请参见“基础库API”手册
数据同步组件 请参见“数据同步”手册
移动网关 请参见“移动网关”手册
用户属性 请参见“用户属性”手册

消息推送组件:

implementation 'com.tencent.tmf.android:base:+'
implementation 'com.tencent.tmf.android:base-core:+'
implementation 'com.tencent.tmf.android:profile:+'
implementation 'com.tencent.tmf.android:conch:+'
implementation 'com.tencent.tmf.android:shark:+'
implementation 'com.tencent.tmf.android:push:+'

接入厂商推送通道

小米推送服务接入

配置小米推送参数

注册小米推送服务步骤,请参见 Android 厂商通道参数申请指南 > 小米参数获取,请根据页面中的申请流程完成开通推送服务并获取 AppID 和 AppKEY,在 build.gradle 文件中声明:

manifestPlaceholders = [
        XM_APPID            : rootProject.ext.TMFDemo_push.xiaomiPushAppId,
        XM_APPKEY           : rootProject.ext.TMFDemo_push.xiaomiPushAppKey,
]

附:小米推送注册失败回调码查询 小米服务端错误码参考

配置小米推送 SDK

在您的 build.gradle 文件中添加小米推送需要用到的 SDK:

implementation "com.tencent.tmf.android:xiaomi-push:+"
implementation "com.tencent.tmf.android:push-support-xiaomi:+"

华为推送服务接入

配置华为推送参数

注册华为推送服务步骤,请参见 Android 厂商通道参数申请指南 > 华为参数获取,请根据页面的申请流程完成开通推送服务并获取APPID,在build.gradle文件中进行声明:

manifestPlaceholders = [
        HW_APPID            : rootProject.ext.TMFDemo_push.huaweiPushAppId,
]

附:华为推送注册失败回调码查询 华为开发文档

配置华为 SDK

(1)下载 agconnect-services.json

华为旧版 SDK 升级后,官方提供了 agconnect-services.json 作为配置文件,需要在官方管理后台下载:

push_icon

将“agconnect-services.json”文件拷贝到应用级根目录下

push_icon

(2)配置 HMS Core SDK 的 Maven 仓地址

push_icon

buildscript {
    repositories {
        // 配置HMS Core SDK的Maven仓地址。
        maven {url 'https://developer.huawei.com/repo/'}
    }
    dependencies {
        // 增加agcp插件配置。
        classpath 'com.huawei.agconnect:agcp:1.4.2.300'
    }
}

allprojects {
    repositories {
        // 配置HMS Core SDK的Maven仓地址。
        maven {url 'https://developer.huawei.com/repo/'}
    }
}

(3)添加华为插件和 push sdk。

push_icon

在 App 的 build.gradle 中添加如下配置和依赖

apply plugin: 'com.huawei.agconnect'
implementation 'com.huawei.hms:push:5.0.4.302'// 推荐使用旧版本,新版本可能无法支持部分旧机型
implementation 'com.tencent.tmf.android:push-support-huawei:+'

荣耀推送服务接入

配置荣耀推送参数

注册荣耀推送服务步骤,请参见 Android 厂商通道参数申请指南 > 荣耀参数获取,请根据页面介绍完成开通推送服务并获取APPID,在build.gradle文件中进行声明:

manifestPlaceholders = [
        HONOR_APPID            : rootProject.ext.TMFDemo_push.honorPushAppId,
]

附:荣耀推送注册失败回调码查询 荣耀开发文档

配置荣耀 SDK

(1)下载 hcs-services.json

荣耀官方提供了 hcs-services.json 作为配置文件,需要在官方管理后台下载,参考如下:

push_icon

同华为,将 hcs-services.json 文件拷贝到应用级根目录下即可。

(2)添加荣耀 push sdk。

implementation 'com.tencent.tmf.android:honor-push:+'
implementation 'com.tencent.tmf.android:push-support-honor:+'

OPPO 推送服务接入

配置OPPO推送参数

注册 OPPO 推送服务步骤,请参见 Android 厂商通道参数申请指南 > OPPO参数获取,请根据页面说明完成开通推送服务并获取 AppKEY 和 APPSECRET,在build.gradle文件中声明:

manifestPlaceholders = [
        OPPO_APPKEY         : rootProject.ext.TMFDemo_push.oppoPushAppKey,
        OPPO_APPSECRET      : rootProject.ext.TMFDemo_push.oppoPushAppSecret
]

附:OPPO推送注册失败回调码查询 网址链接

配置OPPO推送 SDK

implementation 'com.tencent.tmf.android:oppo-push:+'
implementation 'com.tencent.tmf.android:push-support-oppo:+'

vivo 推送服务接入

配置vivo推送参数

注册 vivo 推送服务步骤,请参见 Android 厂商通道参数申请指南 > vivo参数获取,请根据页面说明完成开通推送服务并获取 AppPID 和 AppKEY,在 build.gradle 文件中声明:

manifestPlaceholders = [
        VIVO_APPID          : rootProject.ext.TMFDemo_push.vivoPushAppId,
        VIVO_APPKEY         : rootProject.ext.TMFDemo_push.vivoPushAppKey
]

附:vivo 推送注册失败回调码查询 错误码

配置vivo推送 SDK

implementation 'com.tencent.tmf.android:vivo-push:+'
implementation 'com.tencent.tmf.android:push-support-vivo:+'

Firebase Cloud Messagin (FCM) 推送服务接入

配置FCM推送参数

注册 FCM 推送服务步骤,请参见 Android 厂商通道参数申请指南 > Firebase Cloud Messaging 参数获取,请根据页面说明完成开通推送服务。

配置FCM推送 SDK

(1)下载 google-services.json

FCM 提供了 google-services.json 作为配置文件,需要在官方管理后台下载,参考前述参数获取文档:

push_icon

请将文件置于您的应用模块根目录中。

(2)添加 FCM push sdk。

implementation 'com.google.firebase:firebase-messaging:23.1.1'
implementation 'com.tencent.tmf.android:push-support-fcm:+'

至此厂商推送通道已接入成功,可通过 TMFPushRcvService 接口获取注册结果。

push_icon注意:组件内部处理了部分厂商通道注册的步骤,使用了以下通配符获取必要配置数据,调用方必须按照命名及规定传输数据。

组件内部使用的通配符 通配符描述描述 必选
${HW_APPID} 华为推送服务 AppID,manifestPlaceholders 要配置相应键值 Y
${HONOR_APPID} 荣耀推送服务 AppID,manifestPlaceholders 要配置相应键值 Y
${XM_APPID} 小米推送服务 AppID,manifestPlaceholders 要配置相应键值 Y
${XM_APPKEY} 小米推送服务 AppKEY,manifestPlaceholders 要配置相应键值 Y
${OPPO_APPKEY} OPPO推送服务 AppKEY,manifestPlaceholders 要配置相应键值 Y
${OPPO_APPSECRET} OPPO推送服务 AppSECRET,manifestPlaceholders 要配置相应键值 Y
${VIVO_APPID} vivo推送服务 AppID,manifestPlaceholders 要配置相应键值 Y
${VIVO_APPKEY} vivo推送服务 AppKEY,manifestPlaceholders 要配置相应键值 Y
${applicationId} 注册厂商推送时使用的包名,请确保应用的 applicationId 与注册时使用的包名相同。(具体查询 build.gradle 的配置) Y
Copyright © 2013-2023 Tencent Cloud. all right reserved,powered by GitbookUpdate Time 2023-08-31 14:46:07

results matching ""

    No results matching ""