android: fix recording crash+save, gallery viewer unreachable, back key, settings persistence; photo orientation+annotations, analyzable MDT probes, trace mode
This commit is contained in:
@@ -451,6 +451,51 @@
|
||||
(CAMERA 权限原本会让相机变必需,已显式声明为可选)。
|
||||
**未 push**(按用户指令)。
|
||||
|
||||
## 用户反馈修复 第十九轮(2026-09-11,第二轮真机:相册/录像/分析/设置持久化)
|
||||
|
||||
用户第二轮实机测试报出以下问题,本轮全部处理:
|
||||
|
||||
- [x] **录像停止即闪退**(严重)。两处根因:
|
||||
① `Mp4Recorder.offerFrame` 先取 `inputSurface` 再判断,而 `stop()` 会 release
|
||||
它——采集线程随后 `lockCanvas` 在已释放 Surface 上抛异常,**该异常发生在
|
||||
USB 读线程且无人捕获 → 进程崩溃**。现改为所有 surface/encoder 访问同锁,
|
||||
且 `offerFrame` 整体 try/catch 吞掉编码层异常(丢帧优于崩溃)。
|
||||
② **录完的文件从未保存**(只改了状态文案,相册里什么都没有)。现新增
|
||||
`MediaStore.Video` 保存(`PhotoSaver.saveVideo`)+ 临时文件清理,
|
||||
状态区分 `rec_done`/`rec_save_fail`/`rec_fail`。
|
||||
- [x] **相册点照片打不开**:`AnalyzeViewer` 被放在 `fillMaxSize()` 的 Column
|
||||
**之后**,布局到屏幕外,所以点击像"没反应"。改为 `Box` 内**覆盖层**,
|
||||
并加 `BackHandler` 让返回键关闭查看器。
|
||||
- [x] **远程预览列表按返回键直接退出软件**:缺 `BackHandler`。列表页与查看页
|
||||
均补上(列表→返回设置;查看页→断开并回列表)。
|
||||
- [x] **设置不生效/不持久**(用户:"每次重开设置就变回默认"):根因是
|
||||
**默认调色板/追踪模式从未被实时页读取**(只有方向设置接了)。
|
||||
`AppSettings` 全部相关 setter 现在都 publish 到 `ImageOrientationSettings`,
|
||||
`init` 用持久化值播种;实时页 collect 后即时应用调色板+追踪模式。
|
||||
(`defaultEmissivityPercent`/`alarmTempC` 仍未被管线使用——见"诚实记录"。)
|
||||
- [x] **照片要按设置竖直翻转/旋转后再保存**:新增
|
||||
`PhotoSaver.encodeRendered(frame, orientation, probes)`,拍照时按**与屏幕
|
||||
一致**的方向(翻转→旋转)生成 JPEG,不再保存传感器原始朝向。
|
||||
- [x] **照片上烧录测温点+温度**:拍照时把探针(含 `Pt* 温度` 标签)绘到 JPEG 上。
|
||||
- [x] **MDT 新增探针数据块**(`0x5BB5B55F`,UTF-8 文本行 `x,y,label,tempMc`),
|
||||
分析页可**重新载入**原有测温点并可编辑。
|
||||
- [x] **分析页改造**(按用户要求):只显示保存的原始渲染图(不再按调色板重渲染,
|
||||
避免"改调色板看起来照片被改了");点击图像添加测温点、再点删除;
|
||||
"保存"生成**新照片**(标注烧录、探针入库),原文件不动;
|
||||
最高/最低/中心温度与测温点列表显示在**侧边栏**。
|
||||
- [x] **追踪模式设置项**:设置页新增"追踪"(最高温/最低温/最高+最低/关闭),
|
||||
顶栏按钮显示当前模式(追高/追低/追高·低/追踪),录入 `TraceMode`。
|
||||
- [x] **操作反馈**:拍照/录像完成后在实时页显示 2.5 秒提示(此前这些状态只在
|
||||
"未连接"分支显示,正常出图时用户看不到任何反馈)。
|
||||
- [x] 单测 66 → **76 项全绿**;debug + release(R8) 双构建通过;APK 已更新。
|
||||
|
||||
**诚实记录(本轮未做)**:
|
||||
- `defaultEmissivityPercent`(默认发射率)与 `alarmTempC`(报警温度)**仍未被
|
||||
测温管线使用**:发射率需要官方 `CorrectTemperature` 的完整浮点公式(已从
|
||||
libcxsdk 伪代码定位到 `@000298f0`,但牵涉 T2E/环境温度/`Energe2Temp` 多处
|
||||
状态,属独立议题),报警温度需要超温提示 UI。当前这两项**只保存与显示**,
|
||||
不声称已生效。
|
||||
|
||||
## 用户反馈修复 第十八轮(2026-09-11,真机实测:温度/朝向/远程三类缺陷)
|
||||
|
||||
用户实机安装测试(含两台手机远程预览)报出以下问题,本轮全部处理:
|
||||
|
||||
Reference in New Issue
Block a user