Files
opendance-android/tasks/007-running-ui.md
T
zijunchiang 264786134c docs: 新增「初次部署(从零跑起来)」;去混淆字符与真实内网信息
- README.md / README.txt 新增初次部署章节:前置条件(JDK 17 / SDK 34 / Gradle 8.9)、
  获取代码与本地配置(local.properties 不入仓)、Debug/Release 构建、装到手机与相机权限、
  连接配置(只连 Windows 客户端,默认 8765 / /pose)、第一次跑通、自检清单、常见问题
- 单测数量按实际(30 项)修正
- 三库同源契约:':=' 写法修回、去掉真实 MariaDB 版本串
- 全文去除易被 Gitea 判为「模棱两可 Unicode」的字符
- 本机 JDK 路径与内网示例地址改占位符 / RFC 5737 文档网段
2026-09-15 21:33:27 +08:00

55 lines
2.0 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.
# T-AND-007 运行页 + 状态指示
- **状态**:done
- **依赖**:T-AND-003 / 005 / 006
## 目标
预览 + 骨架叠加 + 实时状态,让用户明确知道「现在到底通不通、识别得准不准」。
## load
```
DSH.md
app/src/main/java/com/opendance/studio/ui/RunningScreen.kt
app/src/main/java/com/opendance/studio/ui/SkeletonOverlay.kt
```
## 数据流
```
CameraX(ImageAnalysis) ──ImageProxy──▶ MediaPipe PoseLandmarker(端侧)
│ 33 点
┌───────────────────────┴───────────────────────┐
▼ ▼
KeypointFrame(239B) ──▶ WebSocket ──▶ Windows 骨架叠加层
```
## 状态指示(本任务的验收重点)
| 指标 | 含义 |
|--|--|
| 连接状态 | 未连接 / 连接中 / 已连接 / 重连中(第 N 次)/ 已断开 |
| 目标 | 完整 WS 地址 |
| 会话 | 服务端 welcome 回来的 sessionId |
| 已发送 / 已丢弃 | 帧数;丢弃 > 0 时提示「推理/连接跟不上」 |
| 发送帧率 / 识别帧率 | 端到端吞吐的两个关键指标 |
| 推理耗时 | 单帧 MediaPipe 推理毫秒数 |
| 人体识别 | 已识别 / 未识别到人体(醒目黄色提示) |
| 平均置信度 | < 70% 时转黄,提示光线或遮挡问题 |
| 最近错误 | 连接或推理的错误原因 |
叠加层把 **低置信度点画成红色**,用户能直接看出是哪个部位没识别到--
比只显示一个错误码有用得多。
## 其他
- 相机权限未授予时显示说明 + 授权按钮,并强调「画面只在本地推理」
- 支持前后摄像头切换(复用同一个分析器实例)
- 返回键在运行页等同于结束推流,避免相机后台占用
## 验收
`assembleDebug` 通过;页面构造路径在构建期完成类型检查。
端到端推流需真机,见 tasks/009 的环境说明。