chore(merge): Update documentation files and file index
- Update Android client architecture documentation - Update Android client feature specification - Update Android client development plan - Refresh file index metadata
This commit is contained in:
67
docs/安卓客户端开发计划表.md
Normal file
67
docs/安卓客户端开发计划表.md
Normal file
@@ -0,0 +1,67 @@
|
||||
# 安卓客户端开发计划表
|
||||
|
||||
> 2026-09-03 重建版:原文档随工作树清理丢失,按任务记录复刻。工作量与阶段划分保持原口径。
|
||||
|
||||
## 技术基线
|
||||
|
||||
| 项 | 选型 |
|
||||
|---|---|
|
||||
| 语言 | Kotlin 2.0.21 |
|
||||
| 架构 | MVVM + Hilt 2.52 + Coroutines 1.9.0 |
|
||||
| 网络 | Retrofit 2.11.0 + OkHttp 4.12.0 + kotlinx.serialization 1.7.3 |
|
||||
| 本地存储 | Room 2.6.1(离线优先)+ DataStore 1.1.1 + EncryptedSharedPreferences |
|
||||
| 蓝牙 | Android 原生 BLE;协议解析器独立为纯 Kotlin JVM 模块(ble-protocol) |
|
||||
| 构建 | AGP 8.7.3 / Gradle 8.10.2 / JDK 17 / minSdk 26 / targetSdk 34 |
|
||||
| 测试环境 | https://jcd.stec.p-q.co(白名单,见 network_security_config) |
|
||||
|
||||
## 阶段与迭代计划(6 阶段,12 周)
|
||||
|
||||
| 阶段 | 内容 | 工作量 | 周期 | 依赖 |
|
||||
|---|---|---|---|---|
|
||||
| S0 工程骨架 | Gradle 多模块、core 基础层、ble-protocol、app 壳(导航/主题/权限/配置) | 4 人日 | 0.5 周 | — |
|
||||
| S1 登录与首页 | M1 全部 + M2 + M7 配置注入 + 修改密码 | 22 人日 | 2 周 | S0 |
|
||||
| S2 任务与采集框架 | M3 全部 + M4 骨架(权限/扫描/连接) | 24 人日 | 2 周 | S1 |
|
||||
| S3 蓝牙采集深化 | M4 解析/下发/暂存/会话 + M5 测点数据 | 28 人日 | 3 周 | S2 |
|
||||
| S4 统计与上传 | M6 全部 + 离线队列上传调度 | 12 人日 | 2 周 | S3 |
|
||||
| S5 联调与测试 | 接口联调、真机回归、性能与弱网测试 | 20 人日 | 2 周 | S4 |
|
||||
| S6 发布准备 | 签名、混淆、应用商店/院内分发、文档 | 4 人日 | 0.5 周 | S5 |
|
||||
|
||||
- 迭代工作量合计:4+22+24+28+12+4 = **94 人日**(其中开发 86 + S0/S6 管理 8)
|
||||
- 测试 20 人日(S5)+ 管理发布 8 人日 → **总计约 114 人日**
|
||||
|
||||
## 模块 × 工作量矩阵(开发 86 人日)
|
||||
|
||||
| 模块 | M1 我的 | M2 首页 | M3 任务 | M4 采集·蓝牙 | M5 测点 | M6 统计 | M7 基础层 | 合计 |
|
||||
|---|---|---|---|---|---|---|---|---|
|
||||
| 人日 | 12 | 6 | 10 | 28 | 12 | 8 | 10 | 86 |
|
||||
|
||||
## 里程碑(MS1–MS6)
|
||||
|
||||
| 里程碑 | 时点 | 验收标准 |
|
||||
|---|---|---|
|
||||
| MS1 工程可构建 | S0 末(第 0.5 周) | Android Studio 打开即 Sync,:app:assembleDebug 通过,协议单测绿 |
|
||||
| MS2 登录闭环 | S1 末(第 2.5 周) | 三种登录方式 + Token 管理 + 项目列表可用 |
|
||||
| MS3 任务可用 | S2 末(第 4.5 周) | 任务列表/详情完整,BLE 扫描连接真机通过 |
|
||||
| MS4 采集闭环 | S3 末(第 7.5 周) | 真机采集→解析→本地暂存全链路跑通 |
|
||||
| MS5 数据闭环 | S4 末(第 9.5 周) | 采集数据上传成功,弱网队列补传可用 |
|
||||
| MS6 发布 | S6 末(第 12 周) | 签名包通过验收测试,交付文档齐全 |
|
||||
|
||||
## 风险与应对(8 项)
|
||||
|
||||
| # | 风险 | 应对 |
|
||||
|---|---|---|
|
||||
| 1 | SecretKey/SystemCode 更换频繁 | 全配置化,支持不换包更换(M7-04) |
|
||||
| 2 | 429/403 限流误伤外业作业 | 队列退避重试 + 明确用户提示 |
|
||||
| 3 | BLE 各厂商兼容性差异 | 主流机型真机矩阵测试;协议层独立单测降低解析回归成本 |
|
||||
| 4 | 弱网/断网场景数据丢失 | Room 离线队列先落盘,网络恢复自动补传 |
|
||||
| 5 | 接口变更(V4.5 之后) | kotlinx.serialization 显式注解,字段演进留默认值 |
|
||||
| 6 | 2.8 废除后的上传通道未定 | 预留 UploadQueue 抽象,通道可替换 |
|
||||
| 7 | 真机依赖与外业时间窗 | S0–S2 期间提前申请设备与测试账号 |
|
||||
| 8 | 人员并行度 | M4(28 人日)为关键路径,S3 阶段优先投入 |
|
||||
|
||||
## 交付物清单
|
||||
|
||||
- 可发布 APK(签名、混淆配置齐备)
|
||||
- 源码工程(本仓库)+ 架构说明文档
|
||||
- 测试报告(S5 产出)
|
||||
- 《安卓客户端功能明细表》(接口覆盖对照)
|
||||
Reference in New Issue
Block a user