mirror of
https://github.com/Silent1566/webhtv.git
synced 2026-10-18 07:09:16 +00:00
fix(reader-tts): 修复停播通知残留、暂停中改语速出声与朗读桥线程,复评朗读补全并合并 beta
合并远端 beta 最新代码(PR#425 C47 seek 加载圈窗口 / PR#426 首页菜单键弹窗对比度), 零冲突;零复活三层证据复活行数 0,beta 增量逐 blob 一致、零丢失。 复评未推送的朗读功能(NOVEL-TTS)后修复三处真实缺陷: - 停播后通知栏残留:onTtsState 在 stopForegroundCompat 撤掉通知后仍无条件 updateNotification,把通知贴回来且标题为「正在朗读」,服务销毁也不清理。 改为 stopped 不再重贴,并在 onDestroy 兜底 cancel。 - 暂停中改语速出声:MediaPlayer.setPlaybackParams 用非零速度等价 start(), 暂停中拖动语速会把音频拖响(界面仍显示「已暂停」)。改为暂停中只更新 options,resume 后在 start() 之后补 applyRate。 - 朗读桥线程:@JavascriptInterface 跑在 WebView 的 JavaBridge 线程,12 个 朗读桥直接改控制器状态会与主线程引擎回调并发(含 size/get 竞态与非主线程 startForeground/通知更新)。统一经 postToService 回主线程。 同时修正 NOVEL-TTS 文档中「音频焦点 GAIN 自动恢复」的不实描述(实现只让出、 不自动恢复),并为上述修复补齐真机断言与源码契约测试。 Verification: 双 flavor Java 与 AndroidTest Java 编译通过;双 flavor 全量 JVM 套件 leanback 4125 / mobile 4963 用例 0 失败 0 错误;UI token 门禁 PASS 且相对基线零新增 违规;真机 192.168.50.3:5555 ReaderTtsDeviceTest OK (6 tests);F1/F2 修复前在真机上用 同一套断言各自复现(暂停中改语速把音频拖响、停播后通知栏残留);零复活三层证据复活 行数 0、beta 增量逐 blob 一致 Task-Guard: C52-beta-merge-review-dev1 Verification: 双 flavor Java + AndroidTest Java 编译通过;双 flavor 全量 JVM 套件 leanback 4125 / mobile 4963 用例 0 失败 0 错误;UI token 门禁 PASS(相对基线零新增违规);真机 192.168.50.3:5555 ReaderTtsDeviceTest OK (6 tests);F1/F2 修复前同机负对照各自复现缺陷(暂停中改语速出声、停播后通知残留);零复活三层证据复活行数 0、beta 增量逐 blob 一致 Task-Guard: C52-beta-merge-review-dev1
This commit is contained in:
parent
86e1bfe3ce
commit
32202da2de
7 changed files with 400 additions and 41 deletions
Loading…
Add table
Add a link
Reference in a new issue