最近项目需求,自己简单集成了OPPO、VIVO、小米、华为的推送服务,记录一下方便以后自己使用
Github地址:Android简单集成OPPO、VIVO、小米、华为推送服务
使用流程
- 申请各个平台的 APP_ID 和密钥,并在build.gradle配置文件中设置对应清单
manifestPlaceholders = [
'VIVO_APP_ID' : 'xxxxxxx',
'VIVO_APP_KEY' : 'xxxxxxx',
'MI_APP_ID' : 'xxxxxxx',
'MI_APP_KEY' : 'xxxxxxx',
'OPPO_APP_KEY' : 'xxxxxxx',
'OPPO_APP_SECRET' : 'xxxxxxx',
]
特别地,华为:配置 maven { url 'https://developer.huawei.com/repo/' };
App中添加了“agconnect-services.json”,并在“buildscript > dependencies”中增加agcp插件配置。
buildscript {
dependencies {
...
// 增加agcp插件配置,推荐您使用最新版本的agcp插件。
classpath 'com.huawei.agconnect:agcp:1.6.0.300'
}
}
详见[华为推送集成配置](https://developer.huawei.com/consumer/cn/doc/development/HMSCore-Guides/android-integrating-sdk-0000001050040084)
-
APP注册推送
BeautyPushManager.getInstance().register()。
为避免不合规检测,推荐在用户同意《用户协议》和《隐私协议》后进行注册 -
注意事项:
- 成功注册推送后,想要通知栏正常显示推送,需要APP请求[打开通知]权限。
- 对于Android 8以上的还需要设置信息通道Channel,详见创建和管理通知渠道
- 在推送平台控制台中发送推送时,要根据APP设置的channel创建推送信息。
- 成功注册推送,点击通知栏的推送信息跳转到具体页面,这个具体页面的配置还需要根据各个推送平台的接入文档自行在APP的“AndroidManifest.xml”进行配置
- VIVO通知消息的处理 [Q11:跳转配置打开应用页面和自定义键值对的示例是什么?] *
- OPPO通知消息的处理 [3、打开范围中,启动应用内页的地址如何填写?怎么传递参数呢?] *
- 小米通知消息的处理 [5.2.2. 通知消息的处理] *
- 华为通知消息的处理 [自定义点击消息动作] *