React Native
接口概览
| API | 描述 | 
| registerPush | 注册推送服务, (必须在 App 用户同意了隐私政策后,再调用该接口使用推送服务)。 | 
| unRegisterPush | 反注册关闭推送服务。 | 
| setRegistrationID | 设置推送设备标识 ID。 RegistrationID 是推送接收设备的唯一标识 ID。默认情况下,注册推送服务成功时自动生成该 ID,同时也支持您自定义设置。请注意!如您调用此接口,请务必在  registerPush前调用。适用场景举例: 若您同时集成了消息服务(Chat)和推送服务(Push),在某个设备上,用户登录 Chat 的 userID 假设为 "user123",如果您想指定向  "user123" 推送消息,则需要调用此接口设置设备标识 ID,如下: Push.setRegistrationID("user123", () => {}); | 
| getRegistrationID | 在成功注册推送服务后,调用此接口可获取推送接收设备的唯一标识 ID,即 RegistrationID。 | 
| getNotificationExtInfo | 收到离线推送时,点击通知栏拉起 App,调用此接口可获取推送扩展信息。 | 
| addPushListener | 添加 Push 监听器。 | 
| removePushListener | 移除 Push 监听器。 | 
| disablePostNotificationInForeground | 应用在前台时,开/关通知栏通知(默认开)。 | 
| createNotificationChannel | 创建客户端通知 channel。此接口可在 Android 平台上实现自定义铃音功能。 | 
接口详情
注册推送服务
接口
registerPush(SDKAppID: number, appKey: string, onSuccess: (data: string) => void, onError?: (errCode: number, errMsg: string) => void);
参数说明:
| 参数 | 类型 | 说明 | 获取路径 | 
| SDKAppID | Number | 推送服务 Push 的 SDKAppID。 |   | 
| appKey | String | 推送服务 Push 的客户端密钥。 |  | 
| onSuccess | Function | 注册推送成功的回调。 | - | 
| onError | Function |undefined | 注册推送失败的回调。 | - | 
反注册关闭推送服务
接口
unRegisterPush(onSuccess: () => void, onError?: (errCode: number, errMsg: string) => void): void;
参数说明:
| 参数 | 类型 | 说明 | 
| onSuccess | Function | 反注册推送成功的回调。 | 
| onError | Function |undefined | 反注册推送失败的回调。 | 
设置推送 ID 标识 RegistrationID
说明:
需要在注册推送服务之前调用。
接口
setRegistrationID(registrationID: string, onSuccess: () => void): void;
参数说明:
| 参数 | 类型 | 说明 | 
| registrationID | String | 自定义的推送 ID 标识。 | 
| onSuccess | Function | 设置自定义推送 ID 标识成功后的回调。 | 
获取推送 ID 标识 RegistrationID
说明:
需要在注册推送服务成功之后调用。
若您调用过 
setRegistrationID 接口设置标识 ID,此接口将返回您设置的标识 ID,否则返回由 Push SDK 生成的随机值。接口
getRegistrationID(onSuccess: (registrationID: string) => void): void;
参数说明:
| 参数 | 类型 | 说明 | 
| onSuccess | Function | 获取推送 ID 标识成功的回调。 | 
获取点击透传的内容
说明:
收到离线推送时,点击通知栏拉起 App,调用此接口可获取推送扩展信息。
接口
getNotificationExtInfo(onSuccess: (extInfo: string) => void): void;
参数说明:
| 参数 | 类型 | 说明 | 
| onSuccess | Function | 获取点击透传的内容成功的回调。 | 
添加 Push 监听器。
接口
addPushListener(eventName: string, listener: (data: any) => void);
参数说明:
| 参数 | 类型 | 说明 | 
| eventName | String | 推送事件类型。 | 
| listener | Function | 推送事件处理方法。 | 
移除 Push 监听器。
接口
removePushListener(eventName: string, listener?: (data: any) => void);
参数说明:
| 参数 | 类型 | 说明 | 
| eventName | String | 推送事件类型。 | 
| listener | Function | undefined | 推送事件处理方法。 | 
应用在前台时,开/关通知栏通知。
接口
disablePostNotificationInForeground(disable: boolean);
参数说明:
| 参数 | 类型 | 说明 | 
| disable | boolean | 应用在前台时,开/关通知栏通知,默认开 true: 应用在前台时,关闭通知栏通知。 false: 应用在前台时,开启通知栏通知。 | 
创建客户端通知 channel。
接口
createNotificationChannel(options: any, onSuccess: (data: any) => void);
参数说明:
| 参数 | 类型 | 说明 | 
| options.channelID | String | 自定义 channel 的 ID。 OPPO:控制台-> 接入配置 中 channelID。 | 
| options.channelName | String | 自定义 channel 的名称。 | 
| options.channelDesc | String | undefined | 自定义 channel 的描述。 | 
| options.channelSound | String | undefined | 自定义 channel 的铃音,音频文件名,不带后缀,音频文件需要放到  MyReactNativeApp/android/app/src/main/res/raw中。例如: options.channelSound = private_ring,即设置MyReactNativeApp/android/app/src/main/res/raw/private_ring.mp3为自定义铃音 | 
| onSuccess | Function | 接口调用成功的回调函数。 |