变更日期:2026-09-15
固定消费模式冷启动且未连接一卡通读卡器时,读卡器缺失回调在 onResume() 内同步展示 PopupWindow。内容视图尚未附着 Activity Window,导致:
WindowManager$BadTokenException: Unable to add window -- token null is not valid
ConsumptionStartLifecyclePolicy,集中约束读卡器启动的生命周期条件。onResume() 改为通过内容视图 post() 延迟启动读卡器检查。isAttachedToWindow() 和 getWindowToken()。onPause() 移除未执行任务,防止页面离开后误启动。SingleTipPop,控制影响范围。ConsumptionStartLifecyclePolicyTest。4 项通过,0 失败,BUILD SUCCESSFUL。
250 项中 247 项通过、3 项失败;失败均为既有 CustomerFullFetchServiceTest,本次未修改该服务。
:app:assembleDebug 成功。a8632d7a7cc714a4eaa2b6527ed0095623c1faf13348ee76079aa39dc009910fgit diff --check 通过。DEVICE_NOT_FOUND。6338 持续存活,ConsumptionStartActivity 保持 resumed 且窗口可见。FATAL EXCEPTION、BadTokenException 或 Unable to add window。仅执行只读 Git 检查;未暂存、提交、推送、拉取、切换分支或创建工作树。