main
第一版 value 行 + 单位同行 + 30sp 字号在窄格里换行成两截:「8,426」一行 + 「步」一行,「327」+「千」+「卡」也各换一行,「47」+「分钟」同样问题 —— 整张图被切成 6 段,视觉上不像三件套、像六个数。 改法:label 含单位(卡路里(千卡)、活动(分钟)),value 行只摆数字,字号降到 26sp —— 三件套格子约 110dp 宽,26sp + 5 位数字 100,000 装得下,再留余量给目标那行小字。 KDoc 注释一并更新,标注 M1 验证阶段肉眼发现的坑。
ring-health-app
智能戒指健康 App(原生 Android / Kotlin + Jetpack Compose)。
- 设计文档:见
ring-health-docs仓库superpowers/specs/ - 当前阶段:M1 静态页面(数据来自 Mock,未接入蓝牙 SDK)
页面清单(M1)
| 页面 | 路由 |
|---|---|
| 健康首页 | home |
| 运动 | workout |
| 运动历史 | workout/history |
| 设备 | device |
| 设备设置 | device/settings |
| 我的 | profile |
| 指标详情(步数/心率/睡眠/血氧/压力/体温/血压) | detail/{metric} |
页面路由的唯一定义处是
core/navigation/Routes.kt,上表与其保持一致。 M1 的验收状态见docs/verification-m1.md。
构建
./gradlew assembleDebug # 产物在 app/build/outputs/apk/debug/
./gradlew installDebug # 安装到已连接设备(需接好设备或已启动模拟器)
./gradlew test # 单元测试
installDebug需要一台已连接的设备或正在运行的模拟器。M1 使用的机器两者都没有, 因此本机实际可执行的是./gradlew assembleDebug与./gradlew :app:testDebugUnitTest。
要求:JDK 17、Android SDK(platform 36 / build-tools 36.1.0)。
Languages
Kotlin
100%