2.1.0 / 20100 的 MLV6 触摸功能与异常触发排查。/Users/ar/Projects/langmei/.worktrees/lm-app-MV6touch-210/Users/ar/Projects/langmei/.worktrees/lm-sdk-MV6touch-210/Users/ar/Projects/langmei/.worktrees/dudu-java-MV6touch-2102.1.0 / 201002.0.64 / 200652.1.0 / 20100 APK,用户目测确认一段时间内不再出现莫名其妙自动震动。0x30 -> cmdScream 不再继续本地下发 0x45 震动命令。0x30 上行日志。0x30;0x30 无条件当成 CMD_SCREAM / JJImpact;/engine/input;BoboRobots、ML-、NML-、MLV1、MLV2。0x44 心跳里的加速度数据进入 AccelerationCalcUtil。AccelerationCalcUtil 会用平均加速度、角度相似度、阈值和至少第二次撞击等逻辑防误判。新设备链路:
MLS3、MLV3、MLV5、MLV6。0x30 表示晃动/撞击。0x30,就透传为 CMD_SCREAM 并进入 cmdScream。AccelerationCalcUtil 的防误判门槛。当前“速度”定义:
0x30 没有携带真实速度、强度或加速度值。0x30 之间的时间间隔 timeIntervalMs 推导快/中/慢。ThreeAxisSensorJJShock2AudioFilter 按 sensor.three_axis.jjimpact 配置里的时间范围匹配标签。AccelerationCalcUtil 软件加速度判定。0x30,但 0x30 不能再被无条件视为有效撞击。0x30 应从“有效撞击”降级为“候选撞击”,经过去抖/误报过滤后才允许上传后端。noStory.vue 的 cmdScream 前增加硬件 0x30 过滤状态机。0x30 只进入 pending,不上传后端。80ms 或 100ms 的后续 0x30 视为重复包/抖动,不上传后端。3000ms,视为孤立误报,重置 pending,不上传后端。0x30,才视为有效撞击并上传后端。0x30。0x30reasoninterval/engine/input/Users/ar/Projects/langmei/.worktrees/lm-app-MV6touch-210/docs/round5/TODO.md0x30 误触发音频的缺陷纠偏。0x30 无条件上报后端”已被真机证据推翻。0x30 误触发音频、静止验证、有效晃动回归。/Users/ar/Projects/langmei/.worktrees/lm-app-MV6touch-210/docs/round5/evidence/android-call-log-after-clean-install-20260623-1839.log0x45 震动误触发已被切断。/Users/ar/Projects/langmei/.worktrees/lm-app-MV6touch-210/docs/round5/evidence/android-unrequested-audio-log-20260623-1848.log
0x30,并继续触发 /engine/input 的 CMD_SCREAM。4980ms 的周期包,以及 12ms、22ms、40ms 的短间隔重复包。0x30 过滤阈值:80ms 或 100ms。3000ms。CMD_SCREAM 后端音频。CMD_SCREAM。0x30 过滤方案落到 round5 需求/TODO 中,再改 SDK 源头。/Users/ar/.codex/audioalert/Langmei-真机测试提醒.mp3。