集成 OPPO 推送
按照本指南集成OPPO 推送客户端,融云 SDK 支持从 OPPO 推送服务收取推送。
- 并非所有的 OPPO 手机都支持 OPPO 推送。OPPO 推送目前支持 ColorOS 3.1 及以上的系统的OPPO的机型,一加5/5t及以上机型,realme 所有机型。详见 OPPO 推送服务文档 业务功能使用问题。
- 在不支持 OPPO 推送的 OPPO 手机上会使用融云默认推送。
在集成第三方推送前,请确保已在融云控制台配置 Android 应用 ID。详见推送集成概述。
在融云控制台配置 OPPO 推送
如果想通过 OPPO 推送接收融云即时通讯服务的推送通知,您需要在融云控制台上提供您的 OPPO 推送应用的详细信息。
-
前往 OPPO 推送运营平台 的配置管理 > 应用配置中获取推送凭证,包括 AppKey、AppSecret、 MasterSecret。
提示- 如果没有 OPPO 开发者账号,或尚未创建应用,或尚未开启推送服务权限,请先在 OPPO 开发者平台上创建账号、应用并开启推送服务权限。详见 OPPO 开发者文档推送服务开启指南。
- OPPO 要求开启推送服务需要注册成为 OPPO 企业开发者,详情请参考 OPPO企业开发者帐号注册流程。
OPPO 推送凭证用途如下:
- AppKey:OPPO 应用的身份标识。客户端以及在融云控制台配置 OPPO 推送时均需使用。
- AppSecret:客户端集成 OPPO 推送 SDK 时使用。
- MasterSecret(即 AppServerSecret):在融云控制台配置 OPPO 推送服务凭证时使用。
-
打开融云控制台,在应用标识页面点击设置 推送,找到 Android > OPPO 推送,填入上一步获取的 App Key、Master Secret。
-
(可选)配置推送通知标题。设置默认的推送通知标题。一般情况下客户端发送消息转 Push 时不使用此标题设置。在调用融云服务端 API
/push.json
、/push/user.json
、/push/custom.json
接口推送通知时,如未传入通知标题,则使用该处设置的标题。从服务端发消息时,如果发送用户 ID 在融云服务端没有用户名,也会使用此 “推送通知标题”。 -
配置推送通道类型。OPPO 官方开发者文档说明如下:为了改善终端用户的通知体验,营造良好可持续的推送生态,OPPO推送对各个APP的push消息数量进行了限量管控;同时针对即时聊天/系统提醒等push需求可以申请走私信通道(该通道不限量)。
提示融云服务端默认使用的是 OPPO 公信推送通道,单日推送消息次数受限,总的推送次数用完后,当日将无法再给用户推送内容。目前单日推送数量为:累计注册用户数*2。如需使用不受推送数量限制的私信推送通道,可参考 OPPO 文档推送私信通道申请。申请私信通道完成后,请返回融云控制台填入私信推送通道的 channel Id。
-
保存设置。所有设置 30 分钟后生效。
您已完成需要融云控制台 OPPO 推送配置的全部内容。现在可以设置客户端集成。
配置客户端接收 OPPO 推送
在 App 的 build.gradle
中添加依赖,并配置 oppo 的 OPPO_APP_KEY
和 OPPO_APP_SECRET
。
android {
defaultConfig {
//...
manifestPlaceholders = [
OPPO_APP_KEY : "xxxxxxxx",
OPPO_APP_SECRET: "xxxxxxxx"
]
}
}
dependencies {
// x.y.z 为当前 IM SDK 版本号
implementation 'cn.rongcloud.sdk.push:oppo:x.y.z'
}
关于权限要求的说明,可参见 OPPO 官方开发者文档 SDK 数据安全说明。
启用 OPPO 推送服务
在 SDK init 之前,调用下面代码,初始化 RongPushPlugin
模块。
RongPushPlugin.init(getContext());
如果找不到 RongPushPlugin
模块,请检查是否已经集成融云自建推送通道。
混淆配置
如果您的应用使用了混淆,您可以使用下面的代码混淆配置:
-keep public class * extends android.app.Service
-keep class com.heytap.msp.** { *;}
处理推送通知的点击事件
- 自定义推送通知点击事件:介绍如何实现 SDK 的默认跳转行为,以及如何自定义处理点击事件。详见自定义推送通知点击事件。
- 自定义推送通知样式:SDK 接收到其他第三方厂商的推送后,弹出的通知是系统通知,由手机系统底层直接弹出通知,所以不支持自定义。
常见问题
接收 OPPO 推送需要用户的 OPPO 手机开启应用的通知权限。由于融云推送属于应用级别的推送,会受系统各种权限限制,我们建议您在使用时,在设置里打开自启动权限和通知权限,或者勾选“信任此应用”等,以提高推送到达率。
OPPO推送暂时只支持通知栏消息的推送。消息下发到 OS 系统模块并由系统通知模块展示,在用户点击通知前,不启动应用。
由于并非所有的 OPPO 手机都支持 OPPO 推送,所以仅在支持 OPPO 推送的 OPPO 手机上使用 OPPO 推送,在不支持 OPPO 推送的 OPPO 手机上使用融云默认推送。