     bash build/package-release.sh     ->  dist-release/

4) 安装到手机

   adb install -r app/build/outputs/apk/debug/app-debug.apk
   adb install -r app/build/outputs/apk/release/app-release.apk

   也可把 APK 拷到手机，允许「安装未知来源应用」后点击安装。
   首次进入运行页会申请相机权限；拒绝后可在运行页点「授予相机权限」
   重新申请，或到系统设置里手动开启。

5) 配置与联通

   本 App 只连接 Windows 客户端，不访问 Web 服务端。
   地址来自 AppSettings.webSocketUrl()：ws://<host>:<port>/pose
   子协议 opendance.pose.v1。

   连接页字段与默认值（见 data/AppSettings.kt）：
     IP 地址          host           默认是 RFC 5737 文档网段占位地址
                                     （源码为 192.0.2.100，非真实主机）
     端口             port           8765
     目标帧率         targetFps      30（5~60）
     分辨率           resolution     640x480（可选 480x360 / 1280x720）
     镜像画面         mirror         开
     仅上半身模式     upperBodyOnly  关

   填写示例（占位符，请替换成你电脑的局域网 IP）：
     IP 地址：192.0.2.10
     端口：  8765

   不想手填可点「扫描局域网」：App 由本机 WiFi IPv4 推导 /24 网段，
   以 32 并发、单机 300ms 超时探测开放 8765 的主机（约 2~3 秒），
   按延迟升序展示，点候选即填入。也可先点「测试连接」确认端口可达。

6) 第一次跑通

   手机与电脑连同一局域网 -> 电脑启动 Windows 客户端（监听 8765）->
   App 填地址并测试连接 -> 点「开始推流」并授予相机权限 -> 站到画面中央。

   成功标志：