react-native-vivo-push
react-native-vivo-push 使用 Android PUSH-SDK API接口文档(2.9.0版本)
vivo推送是vivo公司向开发者提供的消息推送服务,通过在云端与客户端之间建立一条稳定、可靠的长连接,为开发者提供向客户端应用实时推送消息的服务,支持百亿级的通知/消息推送,秒级触达移动用户。
安装
$ yarn add react-native-vivo-push
Link
- React Native 0.60+
CLI autolink feature 在构建应用时已自动链接此模块。
- React Native < 0.60
$ react-native link react-native-vivo-push
Android 配置
在 AndroidManifest.xml
文件中添加以下配置:
<application
...>
<!-- Vivo Push开放平台中应用的 appid 和 api key -->
<meta-data
android:name="com.vivo.push.api_key"
android:value="在开放平台申请的app_key" />
<meta-data
android:name="com.vivo.push.app_id"
android:value="在开放平台申请的app_id" />
...
</application>
使用
;
API 和使用示例
- init
- checkManifest
- turnOnPush
- turnOffPush
- getRegId
- bindAlias
- unBindAlias
- getAlias
- setTopic
- delTopic
- getTopics
- isSupport
- constants 常量
- VivoPushEmitter 事件订阅
init
初始化push服务,可以提高后台发送消息的实时性。尽量在准备vivo推送前调用。
定义:
: void
Example:
VivoPush;
checkManifest
校验接入是否异常。
定义:
: Promise
Returns:
Promise
对象。如果当前配置错误,将抛出异常。
Example:
VivoPush;
turnOnPush
打开PUSH
定义:
: void
Example:
VivoPush;
turnOffPush
关闭PUSH
定义:
: void
Example:
VivoPush;
getRegId
获取当前设备的当前应用的唯一标识。
定义:
: Promise
Returns:
Promise
对象。如果存在唯一标识并且不为空,返回标识的字符串。
Example:
VivoPush;
bindAlias
设置应用别名。
定义:
: void
Example:
let alias = "别名";VivoPush;
unBindAlias
取消应用别名
定义:
: void
Example:
let alias = "别名";VivoPush;
getAlias
获取应用别名
定义:
: Promise
Returns:
Promise
对象。如果成功,返回应用别名的字符串。
Example:
VivoPush;
setTopic
设置标签
定义:
: void
Example:
let topic = "标签";VivoPush;
delTopic
删除标签
定义:
: void
Example:
let topic = "标签";VivoPush;
getTopics
获取标签
定义:
: Promise
Returns:
Promise
对象。返回标签的字符串数组。
Example:
VivoPush;
isSupport
当前系统是否支持PUSH
定义:
: Promise
Returns:
包含当前系统是否支持PUSH的 Promise
对象,支持为 true
,否则为 false
Example:
VivoPush;
constants
该常量用于事件订阅返回的数据类型
定义:
VT_RECEIVE_REG_ID // 获取当前设备的当前应用的唯一标识VT_TURN_ON_PUSH // 打开PUSHVT_TURN_OFF_PUSH // 关闭PUSHVT_BIND_ALIAS // 设置应用别名VT_UN_BIND_ALIAS // 取消应用别名VT_SET_TOPIC // 设置标签VT_DEL_TOPIC // 删除标签VT_MSG_CLICKED // 点击通知
VivoPushEmitter
用于事件订阅
Example:
{ superprops; thisonVivoPushListener = this_onVivoPushListener; } { VivoPushEmitter; } { VivoPushEmitter; } { let text; if typeof event == "string" text = event; else text = JSON; let data state type = event; console; }
Demo
Demo 代码参考 example
修改 AndroidManifest.xml
的 com.vivo.push.api_key
和 com.vivo.push.app_id
,为您的应用在 vivo 推送平台申请的 api_key
和 app_id
。