dongliang
379d784f70
fix: 去抖改为暂存合并,不丢弃消息
问题:多条MQTT消息同时到达(间隔<1s),去抖直接丢弃后续消息。
旧版是延迟处理而非丢弃。
修复:
- 去抖窗口内的消息暂存到pendingJsons
- 1s后延迟任务统一处理暂存消息(只加ID,不重复震动)
- 合并后统一发一次NewTaskArrived事件更新横幅
- MainActivity改为监听NewTaskArrived事件显示横幅
时序示例:
t=0ms: 消息1(A) → 立即处理, pendingTaskIds=[A], 横幅"1条"
t=100ms: 消息2(B) → 暂存
t=200ms: 消息3(C) → 暂存
t=1000ms: 延迟任务 → 处理B+C, pendingTaskIds=[A,B,C], 横幅"3条"
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-29 15:27:06 +09:30
..
2026-04-29 15:27:06 +09:30
2026-04-29 12:06:59 +09:30
2026-04-29 12:06:59 +09:30
2026-04-29 12:06:59 +09:30
2026-04-29 13:48:04 +09:30
2026-04-29 12:06:59 +09:30
2026-04-29 15:27:06 +09:30
2026-04-29 15:15:33 +09:30
2026-04-27 11:26:50 +09:30