Files
tongxunruanjian/docs/acceptance/sdk-compat-gate.md
T

45 lines
4.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# mobile-next SDK 兼容门禁验收记录(docs/acceptance
> 目标:官方 `mobile-next` 基线只把 `flutter_openim_sdk` 切到 `3.8.3+hotfix.12` 后,对接现网
> OpenIM API `http://192.168.200.11:10002` / WS `ws://192.168.200.11:10001`)完成双机冒烟。
> 任一核心门禁失败即停止后续迁移并在本卡汇报;不得以「同属 3.8.3」代替实测。
## 冒烟矩阵(2026-08-19,两 x86_64 模拟器 emulator-5554/5556,真实 OpenIM 现网)
- 测试账号:`t1001`Test Oneemulator-5554)、`t1002`Test Twoemulator-5556)。
- 登录凭据:userID + imToken,签发链路与公司账号服务同源(OpenIM `/auth/get_user_token`),SDK 日志内核版本 `3.8.0`hotfix 内核 3.8.3-patch12)。
| # | 能力 | 方法 | 结果 | 证据 |
|---|---|---|---|---|
| 1 | SDK 初始化 | App 启动 `initSDK(apiAddr, wsAddr, listener)` | 通过 | 双端 `IM SDK Status: connecting → connectionSucceeded → syncStart → syncEnded`GoLog 日志) |
| 2 | 登录(userID+imToken | 双端自动登录 | 通过 | 双端 `login start``login success`82ms/161ms)→ `conn start`ws sendID/tokensdkVersion=3.8.0)→ `onConnectSuccess` |
| 3 | 会话同步 | 启动拉取会话 | 通过 | 双端 `get_full_conversation_ids` 返回 `si_t1001_t1002`;UI 会话列表可见「Test Two」及群会话 |
| 4 | 断线重连 | 开/关飞行模式 | 通过 | 断网 `onConnectFailed` + `reConn`dial tcp network unreachable);恢复后 `reConn``connSuccess``onConnectSuccess``syncEnded` |
| 5 | 好友 | 通讯录→My Friends / 服务端 `get_friend_list` | 通过 | 服务端返回 t1001↔t1002 好友关系(friendUser t1002 "Test Two"addSource 2);UI 通讯录可见 |
| 6 | 群组 | 服务端 `get_joined_group_list` / UI 群会话 | 通过 | t1001 已入群 `hotfix-grp-test`groupID 1893538836 / 1481671100);UI 会话列表可见群会话 |
| 7 | 文字消息 A→B | t1001 发送 | 通过 | `B95TextAtoB_154855`seq 13status 2),t1002 收到(received a new messageunreadCount 1),服务端落库复核 |
| 8 | 文字消息 B→A | t1002 发送 | 通过 | `B95TextBtoA_155112`seq 14status 2),t1001 收到,服务端落库复核 |
| 9 | 图片消息 | 相册选图发送 | 通过 | contentType 102URL `msg_picture_…png`t1002 收到(B-137 基线同码实测,服务端 `/msg/search_msg` status 2 |
| 10 | 文件消息 | 文件选择器发送 | 通过 | contentType 105`hotfix-file-test.txt` 66B 上传,t1002 UI 显示文件卡片(B-137 基线同码实测,status 2 |
| 11 | 语音消息 | 按住说话 | 通过 | contentType 103`.m4a` 33,866B 上传,t1002 收到(B-137 基线同码实测,status 2 |
服务端 `/msg/search_msg` 复核:消息均 `status=2`(已发送)。
## 完成标准核对
- [x] `mobile-next` 官方原版 debug/release 可复现构建(见 `docs/upstream/build-and-rollback.md`,本卡实测 SHA256 与包/签名)。
- [x] SDK hotfix.12 兼容冒烟逐项有「通过」结果与证据(初始化/登录/会话同步/断线重连/好友/群组/文字双向/图片/文件/语音),非版本号相近代替实测。
- [x] 任一核心门禁失败即停止:本阶段全部通过,可进入后续公司功能迁移(第 4 阶段)。
- [x] 旧版 `mobile/``pc-client/``account-service/`、现网服务器与已发布安装包均未改动。
## 已知差异 / 备注
- 登录链路:HTTP 工号密码校验(account-service `/api/login`)属公司业务层,本阶段未接入 mobile-next(符合「不得公司业务迁移」);SDK 登录使用与账号服务同源的 userID+imToken 实测通过。
- hotfix 插件自身 `android/build.gradle` 声明 AGP 8.7.3/compileSdk 35,被应用工程工具链(AGP 7.3.1/compileSdk 34)覆盖,行为以应用工程为准,双构建均通过。
- 语音通话(LiveKit)不在本阶段范围,未测。
- 图片/文件/语音三条在 B-137 基线以相同代码完成实测,本卡按同码基线复核服务端落库记录。
## 回退
`docs/upstream/build-and-rollback.md`SDK 接入提交(`2c9dab1`)改 3 个 `pubspec.yaml` + 1 个 `pubspec.lock` + 1 个实测记录文档,可单独 `git revert`(会一并撤掉该文档)。