React Native IMLib 概览
React Native 端以 @ni-paas-im/react-native-im-wrapper 交付:公开 API(类名/方法/枚举/错误码/事件)按 @rongcloud/react-native-im-wrapper 5.34.0 的形状设计,内部把原生能力收敛到一层可替换的 NativeBridge(Android/iOS 复用同一套 WebSocket wire 协议)。
当前覆盖度:骨架实现
基线 RN 引擎方法 166 个,本包已实现 12 个(对象生命周期、连接、文本消息、事件监听、枚举/错误码)。未实现的方法在 TypeScript 编译期直接报错,不会静默降级;缺失清单随版本说明发布。
能力范围
| 能力 | 已实现 | 说明 |
|---|---|---|
| 引擎生命周期 | ✓ | RCIMIWEngine.create(appKey, options?, bridge?) / destroy()(进程内单例) |
| 连接 | ✓ | connect(token, timeout, callback?)(超时单位秒)/ disconnect(receivePush) |
| 连接状态 | ✓ | setOnConnectionStatusChangedListener / getConnectionStatus() / getCurrentUserId() |
| 文本消息 | ✓ | createTextMessage(type, targetId, channelId, text) + sendMessage(message, callback?) |
| 消息监听 | ✓ | setOnMessageReceivedListener |
| 图片/文件/群/会话/已读/撤回 | — | 未实现(缺失 157 个方法);需要时请在业务侧走服务端 Open API |
平台与依赖
| 项 | 要求 |
|---|---|
| 运行时 | Node.js ≥ 22(SDK 包 engines 字段) |
| React Native | 0.73+;需要原生模块 NipaasIMNativeModule(Android/iOS 桥接) |
| 类型 | 随包提供 lib/index.d.ts;react-native 字段指向 src/index.ts |
| 测试 | 无设备可用 MockBridge 跑完整单测(在 SDK 包目录执行 npm test) |
| 发布 | 尚未发布到 npm registry(private: true):用 file: / path 依赖 |