XuqmGroup-RNSDK/packages/push
XuqmGroup 4d2b834f96 feat(sdk): 下载相册/进度、XWebView内联config、上报限频采样、版本忽略、push桥接原生sdk-push
- xwebview: 下载支持公共Downloads/相册(CameraRoll懒加载)/JS进度/openFile;XWebViewView 新增内联 config prop(同屏多实例不污染全局)
- bugcollect: startCapture 自动启用 HttpInterceptor + 按指纹滑动窗口限频 + setSampleRate 采样(降低服务端存储压力)
- update: ignoreAppVersion/clearIgnoredAppVersion/getIgnoredAppVersion 客户端忽略版本(强制更新除外)
- common/metro: withXuqmConfig 自动链式 withBugCollect(Release 包 sourcemap 自动上传)
- push: 桥接完整原生 sdk-push(Android Kotlin + iOS Swift + JS 薄层),删除旧反射实现;单一 XuqmSDK.setUserInfo 驱动厂商检测/token/绑定

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-25 17:50:29 +08:00
..
android feat(sdk): 下载相册/进度、XWebView内联config、上报限频采样、版本忽略、push桥接原生sdk-push 2026-06-25 17:50:29 +08:00
ios feat(sdk): 下载相册/进度、XWebView内联config、上报限频采样、版本忽略、push桥接原生sdk-push 2026-06-25 17:50:29 +08:00
src feat(sdk): 下载相册/进度、XWebView内联config、上报限频采样、版本忽略、push桥接原生sdk-push 2026-06-25 17:50:29 +08:00
package.json fix: @xuqm/rn-common 从 dependencies 移到 peerDependencies,避免宿主项目嵌套安装旧版 2026-06-16 13:27:23 +08:00
react-native.config.js feat(sdk): 下载相册/进度、XWebView内联config、上报限频采样、版本忽略、push桥接原生sdk-push 2026-06-25 17:50:29 +08:00
README.md docs: 添加 CLAUDE.md + 各 package README + 架构总览 + 模块待开发说明 2026-06-16 12:14:52 +08:00

@xuqm/rn-push

XuqmGroup RN SDK 推送模块。自动检测设备厂商并完成推送 token 注册。

安装

yarn add @xuqm/rn-push

Peer dependenciesreact-native >= 0.76

使用

无需手动初始化。 XuqmSDK.setUserInfo(info) 被调用时,SDK 自动完成:

  1. 检测设备厂商(华为/小米/OPPO/vivo/荣耀/FCM/APNs
  2. 从平台获取该厂商推送配置
  3. 调用厂商 SDK 完成设备注册
  4. 收到 token 后自动上报绑定到平台
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。