扫码页无响应自恢复变更记录

问题现象与定位

实施内容

  1. 新增 ScannerSerialPortResolver,集中维护设备型号与扫码串口的映射:RK3568/F700 使用 /dev/ttyS3,其他设备使用工程默认 /dev/ttyS2
  2. 新增 ScannerInactivityMonitor,扫码打开后记录最近一次成功、离盘或失败事件时间。
  3. 每 30 秒检查一次扫码状态;连续 2 分钟没有任何 SDK 事件时,回收旧扫码句柄并重新打开串口,同时写入本地日志。
  4. 页面停止或销毁时取消定时检查、停止状态监测并关闭扫码句柄,避免离开页面后继续重连。
  5. 扫码结果分发统一检查业务监听器,并兼容 SDK 返回空结果,避免监听器已释放或结果为空时触发空指针异常。

代码范围

验证结果

验证边界

现场 F700 当前安装的是 2.1.3 版本 APK,本源码构建版本为 1.6.0。本次未执行降级覆盖安装,避免未经确认替换现场应用及影响现有数据;因此已完成源码、单元测试、构建和签名验证,真机扫码与自动恢复需在确认部署方案后复验。