50 行
1.4 KiB
Markdown
50 行
1.4 KiB
Markdown
|
|
# XuqmGroup RN Chat Demo
|
|||
|
|
|
|||
|
|
这个演示项目用于验证三条能力:
|
|||
|
|
|
|||
|
|
1. `@xuqm/rn-sdk` 的单聊消息发送、历史拉取、实时接收
|
|||
|
|
2. `update-service` 的 App 版本检查
|
|||
|
|
3. `update-service` 的 RN 插件热更新检查、下载与本地缓存
|
|||
|
|
|
|||
|
|
## 当前默认配置
|
|||
|
|
|
|||
|
|
- 域名:`https://sentry.xuqinmin.com`
|
|||
|
|
- IM WebSocket:`wss://sentry.xuqinmin.com/ws/im`
|
|||
|
|
- 演示 AppId:`ak_demo_chat`
|
|||
|
|
- 演示用户:`demo_alice`、`demo_bob`
|
|||
|
|
- 演示模块:`chat-home`
|
|||
|
|
|
|||
|
|
## 运行
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
cd XuqmGroup-RNChatDemo
|
|||
|
|
npm install
|
|||
|
|
npm run start
|
|||
|
|
npm run android
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 发布演示更新数据
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
cd XuqmGroup-RNChatDemo
|
|||
|
|
./scripts/publish-demo-assets.sh
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
脚本会发布两类演示数据:
|
|||
|
|
|
|||
|
|
1. `appId=ak_demo_chat` 的 Android App 版本 `1.0.1`
|
|||
|
|
2. `moduleId=chat-home` 的 Android RN bundle 版本 `1.0.1`
|
|||
|
|
|
|||
|
|
## 演示步骤
|
|||
|
|
|
|||
|
|
1. 打开 App,默认会以 `Alice` 登录 IM 并拉取与 `Bob` 的历史消息
|
|||
|
|
2. 输入内容并发送,观察消息列表和日志区
|
|||
|
|
3. 点击顶部切换到 `Bob`,可以看到同一条会话历史
|
|||
|
|
4. 点击“检查 App 更新”,验证版本管理接口
|
|||
|
|
5. 点击“检查插件更新并缓存”,验证热更新查询、下载和本地缓存
|
|||
|
|
|
|||
|
|
## 说明
|
|||
|
|
|
|||
|
|
当前插件更新演示的是“检查 + 下载 + 缓存”链路,缓存内容保存在 `AsyncStorage`。
|
|||
|
|
如果后续要做真正的运行时热替换,可以在此基础上再接原生 bundle loader。
|