Co-authored-by: Cursor <cursoragent@cursor.com> Co-authored-by: multica-agent <github@multica.ai>
3.2 KiB
B-261 Android「我的信息」404
分支:本卡施工分支(基于联网修复复测包 1895830 / agent/agent/a4ad7eed)
对照用户安装包:Gitea v3.8.3-network-fix-retest(changlian-android-3.8.3-b225.apk)
本卡只改客户端用户资料读取,不改现网服务、不改账号数据、不覆盖旧 Release。
结论:404 是客户端把官方 chat 接口打到了账号服务。责任在客户端。已改为走 OpenIM SDK,不再请求 /user/find/full。
直接原因
用户截图:GET http://192.168.200.11:10010/user/find/full → 404。
| 核对项 | 结果 |
|---|---|
| 账号服务真实路由 | 只有 /api/login、/api/directory、/api/rtc_token、管理接口;没有 /user/find/full |
| 现网探测 | GET/POST http://192.168.200.11:10010/user/find/full 均 404;GET /api/health 200,员工数 3 |
| 当前发布包调用方 | 官方页「我的信息」走 Apis.queryMyFullInfo() → HttpUtil.post(Urls.getUsersFullInfo) |
| URL 来源 | B-225 把 Config.appAuthUrl 从已关闭的 :10008 改到 :10010,登录能通,但这条 chat 路径仍打到账号服务 |
| 代码方法 | 源码是 POST;GET/POST 对不存在的路径都是 404,和截图一致 |
旧 mobile/ 和 PC 早已用 OpenIM SDK 取资料,不打这条路径。新 mobile-next/ 漏改。
责任边界:客户端请求了账号服务没有的接口。不是工号密码错误,也不是服务器宕机。不需要改现网。
最小修复
Apis.getUserFullInfo / queryMyFullInfo / searchUserFullInfo / updateUserInfo 改为 OpenIM SDK(与 PC pc-client/src/api/login.ts 同一策略)。
- 能同步:工号、昵称、头像、勿扰
- 不再有值:手机号、邮箱、性别、生日等原 chat 业务字段
- 未改:
account-service/、docker、旧mobile/、PC
回退
从新到旧:git revert 本验收记录提交,再 git revert 代码提交。用户侧可继续用 v3.8.3-network-fix-retest 或旧包 v1.0.6-internal-test。
构建
- Flutter 3.24.5 / Dart 3.5.4 / Temurin 17.0.20
flutter build apk --release成功- 上游告警同 B-225:Flutter Gradle apply-script 弃用;部分依赖 Kotlin metadata 1.8.0 vs 工程预期 1.6.0。release 通过。
| 产物 | 版本 | 包名 | 大小 | SHA256 |
|---|---|---|---|---|
| Android release APK | 3.8.3+180 | io.openim.flutter.demo |
53,286,915 B | 42D74E85AEC52A3889ED79CE7345C3BA5F69B4B3FA994032C2D38DF6A9CF5987 |
路径:mobile-next/build/app/outputs/flutter-apk/app-release.apk(APK 内嵌时间戳,哈希不可位级复现)
已测 / 未测
已测:
- 现网
:10010/user/find/fullGET/POST 404,/api/health200 UserFullInfoMapper单测 3 项通过- 改动文件
flutter analyze无新增 error(剩余 8 条均为apis.dart原有 warning/info) - Android release 构建通过,校验值见上表
Apis不再引用Urls.getUsersFullInfo/updateUserInfo/searchUserFullInfo
未测(不得写成已通过):
- 公司内网真机登录后打开「我的信息」
- 登录、联系人、发消息完整回归
残余:官方 searchFriendInfo、改密、验证码仍指向已下线 chat 路径;工号登录主路径和「我的信息」不再走这些接口。