54 行
1.3 KiB
Markdown
54 行
1.3 KiB
Markdown
|
|
# @xuqm/rn-push
|
|||
|
|
|
|||
|
|
XuqmGroup RN SDK 推送模块。自动检测设备厂商并完成推送 token 注册。
|
|||
|
|
|
|||
|
|
## 安装
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
yarn add @xuqm/rn-push
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
Peer dependencies:`react-native >= 0.76`
|
|||
|
|
|
|||
|
|
## 使用
|
|||
|
|
|
|||
|
|
**无需手动初始化。** `XuqmSDK.setUserInfo(info)` 被调用时,SDK 自动完成:
|
|||
|
|
1. 检测设备厂商(华为/小米/OPPO/vivo/荣耀/FCM/APNs)
|
|||
|
|
2. 从平台获取该厂商推送配置
|
|||
|
|
3. 调用厂商 SDK 完成设备注册
|
|||
|
|
4. 收到 token 后自动上报绑定到平台
|
|||
|
|
|
|||
|
|
```ts
|
|||
|
|
import { PushSDK } from '@xuqm/rn-push'
|
|||
|
|
|
|||
|
|
// 通常不需要手动调用,setUserInfo 会自动触发
|
|||
|
|
// 设置离线推送开关
|
|||
|
|
await PushSDK.setOfflinePushEnabled(false)
|
|||
|
|
|
|||
|
|
// 设置免打扰时间段(24 小时制)
|
|||
|
|
await PushSDK.setQuietHours('22:00', '08:00')
|
|||
|
|
|
|||
|
|
// 清除免打扰
|
|||
|
|
await PushSDK.clearQuietHours()
|
|||
|
|
|
|||
|
|
// 主动登出(通常不需要,setUserInfo(null) 自动触发)
|
|||
|
|
await PushSDK.logout()
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## API
|
|||
|
|
|
|||
|
|
| API | 说明 |
|
|||
|
|
|-----|------|
|
|||
|
|
| `PushSDK.setOfflinePushEnabled(enabled)` | 设置离线推送开关 |
|
|||
|
|
| `PushSDK.setQuietHours(start, end)` | 设置免打扰时间段 |
|
|||
|
|
| `PushSDK.clearQuietHours()` | 清除免打扰设置 |
|
|||
|
|
| `PushSDK.logout()` | 解绑推送 token |
|
|||
|
|
|
|||
|
|
## 支持厂商
|
|||
|
|
|
|||
|
|
HUAWEI / XIAOMI / OPPO / VIVO / HONOR / FCM / APNS
|
|||
|
|
|
|||
|
|
## 依赖
|
|||
|
|
|
|||
|
|
需要原生模块 `NativeModules.XuqmPushModule` 已链接到宿主 App。
|