集成 vivo 推送
按照本指南集成vivo 推送客户端,融云 SDK 支持从 vivo 推送服务收取推送。
在集成第三方推送前,请确保已在控制台配置 Android 应用 ID。详见推送集成概述。
在控制台配置 vivo 推送
如果想通过 vivo 推送接收融云即时通讯服务的推送通知,您需要在控制台上提供您的 vivo 推送应用的详细信息。
-
前往 vivo 开发者平台-推送服务器平台,并记录下 vivo 应用的 AppID、AppKey、AppSecret。
提示如果没有 vivo 开发者账号,或尚未创建应用,参考 vivo 文档 vivo 推送接入流程。
-
打开控制台,在应用标识页面点击设置推送,找到 Android > vivo 推送,填入上一步获取的 AppID、AppKey、AppSecret。
-
(可选)配置推送通知标题。设置默认的推送通知标题。一般情况下客户端发送消息转 Push 时不使用此标题设置。在调用融云服务端 API
/push.json
、/push/user.json
、/push/custom.json
接口推送通知时,如未传入通知标题,则使用该处设置的标题。从服务端发消息时,如果发送用户 ID 在融云服务端没有用户名,也会使用此 “推送通知标题”。 -
配置推送模式。关于正式推送与测试推送的区别,请参考 vivo 文档vivo 推送使用指南。
-
(可选)配置推送通道类型与 Category(消息二级分类)。如果调用客户端或服务端 API 发送消息或推送通知时未传值,默认使用此处配置的值。请参考 vivo 文档推送消息分类说明进行配置。
-
保存设置。所有设置 30 分钟后生效。
您已完成需要控制台 vivo 推送配置的全部内容。现在可以设置客户端集成。
配置客 户端接收 vivo 推送
在 App 的 build.gradle
中添加依赖,并配置 vivo 的 VIVO_APP_ID
和 VIVO_APP_KEY
。
android {
defaultConfig {
//...
manifestPlaceholders = [
VIVO_APP_ID : "xxxxxxxxxx",
VIVO_APP_KEY: "xxxxxxxxxx"
]
}
}
dependencies {
// x.y.z 为当前 IM SDK 版本号
implementation 'cn.rongcloud.sdk.push:vivo:x.y.z'
}
启用 vivo 推送服务
在 SDK init 之前,调用下面代码,初始化 RongPushPlugin
模块。
RongPushPlugin.init(getContext());
如果找不到 RongPushPlugin
模块,请检查是否已经集成融云自建推送通道。
混淆配置
请在混淆文件中添加以下说明,防止 SDK 内容被二次混淆,自定义回调类切勿混淆。
-dontwarn com.vivo.push.**
-keep class com.vivo.push.**{*; }
-keep class com.vivo.vms.**{*; }
-keep class xxx.xxx.xxx.PushMessageReceiverImpl{*;}
处理推送通知的点击事件
- 自定义推送通知点击事件:介绍如何实现 SDK 的默认跳转行为,以及如何自定义处理点击事件。详见自定义推送通知点击事件。
- 自定义推送通知样式:SDK 接收到其他第三方厂商的推送后,弹出的通知是系统通知,由手机系统底层直接弹出通知,所以不支持自定义。
设置应用自增角标
vivo 提供以下桌面角标的技术方案,以帮助您实现应用自增角标的功能。
- 系统 API 接入。 通过此方案,您可以利用 vivo 提供的系统 API 来设置桌面角标。此方案仅在应用存活时有效。具体接入方式,请参考桌面角标设置方法 - 系统API。
- Vpush 接入。 由于融云已经集成 Vpush 接入方案,您可以向融云提交工单开通此功能,并按照桌面角标设置方法 - Vpush接入方法接入。