ColorOS Live Lyrics Bridge v4.3.2
简体中文
状态栏与控制中心媒体卡片排版彻底根治
- 永不改写 QS 规则表:Bridge 彻底移除对 OPlus QS 规则表(
args[1])的修改,100% 保留系统原生 RUS 策略。无论是 QQ 音乐、网易云、还是通用 Provider 接入的 SaltPlayer、LX 等任意播放器,状态栏下拉控制中心的播放器卡片完全按照播放器原生排版呈现,彻底解决按钮错位、关闭按钮丢失等排版崩溃问题。 - 两类播放器针对性处理:
- 第一类(原生内置 Rule0,如 QQ 音乐、网易云):原生主表本就是 Rule0,不碰任何规则表,仅在锁屏时原位把收藏槽替换为翻译按钮(跳过重排,保持列表长度与顺序)。
- 第二类(无内置 Rule0,如通用 Provider 播放器):仅在锁屏主表(
args[0])前置0,优先级,绝不污染 QS 状态栏。
翻译按钮锁屏态门禁与即时刷新
- 锁屏态门禁:翻译按钮仅在设备处于锁屏状态(Keyguard locked)时激活注入;解锁进入桌面(USER_PRESENT)时,自动平滑撤出注入并恢复原生卡片。真机实测人脸与指纹解锁过渡无任何视觉闪烁、跳变或抽搐。
- 即时刷新修复:修复了此前内部重绑机制将包名误传为 Key 导致 SystemUI 忽略刷新的问题。现在灭屏锁屏或解锁进入桌面瞬间,媒体卡片即时响应并刷新形态,完全无需手动切歌或暂停。
- 延时锁屏保护:在亮屏时核验真实锁屏状态,解决灭屏延时锁定窗口内未上锁直接回桌面导致的卡片残留。
收紧翻译按钮注入门禁与防污染
- 严格歌词门禁:仅在当前播放器确实由歌词 Provider 服务且当前曲目确实包含有效翻译歌词时,才允许展示翻译按钮;未适配播放器或无翻译歌曲严格保持 100% 原生。
- 对象状态恢复:在关闭或撤出按钮时,自动恢复 SystemUI 内存中
MediaAction的原始图标与回调,彻底消除多卡片对象共享引起的污染。
兼容矩阵与升级
- Bridge 仍只作用于
system与com.android.systemui,不进入播放器进程,不恢复私有歌词传输。 - 14 个 Provider 仍为 libxposed API 102 矩阵;KuWo 保持 1.2.0 (3),其余模块版本不变。
- 升级:从同一个 v4.3.2 Release 安装 Bridge 与所需 Provider APK;更新 Bridge 或变更 scope 后重启 SystemUI。
资产
正式 Release 包含 18 项已验证资产:1 个 Bridge APK、14 个 Provider APK、1 个 Provider ZIP、release-assets-v4.3.2.json 与 SHA256SUMS。
ColorOS 17 适配计划
ColorOS 17 的 nolog 版本封锁 bootloader,无法解锁并建立模块运行环境,因此本项目不会跟进 nolog 分支的更新与适配;同时主力机型一加 13 也尚未收到 ColorOS 17 nolog 版本,缺少可验证的设备条件。因此 ColorOS 17 适配将在 ColorOS 17 正式版发布之后再启动:届时先在正式版上核对 SystemUI 媒体/歌词实现与权限面差异,再给出 Bridge 与 Provider 的适配版本。在此之前,现有 ColorOS 16 版本继续接收 bug 修复。
致谢
感谢 Salt Player 提供字符上浮跃模态的视觉参考,也感谢 Lyrico 与 Lyrico-Plugins 在本地音乐元数据、歌词管理和插件化歌词源上的开源工作与启发。
English
Complete fix for status bar and Quick Settings media card action layout
- Never mutate the QS rule table: The Bridge completely ceases patching the OPlus Quick Settings action-rule table (
args[1]), preserving 100% native RUS rules. Media cards in the notification shade and Quick Settings for QQ Music, NetEase, and universal provider players (SaltPlayer, LX Music, etc.) always adhere strictly to their native action order, eliminating misplaced controls and missing actions. - Differentiated player classification:
- Class 1 (Natively Rule0, e.g. QQ Music, NetEase): Left entirely untouched in rule tables; favorite slot replaced in-place without re-ordering the action list.
- Class 2 (Non-Rule0, e.g. Universal Provider players): Prepends
0,strictly on the main lockscreen surface (args[0]), leaving the QS surface completely pure.
Lockscreen-only gate and instant state rebind
- Lockscreen-only gate: Translation toggle injection is only active while the device is locked (Keyguard locked); unlocking into the launcher (USER_PRESENT) smoothly withdraws the toggle and restores the native card. Verified on physical devices with zero flicker, layout jump, or white-screen artifacts during facial or fingerprint unlock.
- Instant rebind fix: Fixed a bug where the internal rebind passed a package name instead of the composite MediaEntry key, causing SystemUI to ignore state refreshes. Lockscreen and unlock transitions now refresh immediately without requiring a track switch or pause.
- Delay-lock protection: Re-checks actual keyguard lock state on screen-on to prevent stale toggle retention during smart-lock or delay-lock windows.
Tightened translation toggle gate and object contamination prevention
- Strict payload gate: Translation toggles are only permitted when the player is actively managed by a lyric provider and the current song contains verified translation lines. Unadapted players and non-translated tracks remain 100% native.
- Native action restoration: Automatically restores original icon drawables and callbacks on SystemUI
MediaActionobjects upon withdrawal, preventing cross-surface object sharing pollution.
ColorOS 17 adaptation plan
ColorOS 17 nolog builds lock the bootloader, preventing root and Xposed environments. Therefore, this project will not track or support nolog firmware. Furthermore, our primary test device (OnePlus 13) has not received any C17 nolog builds. Full ColorOS 17 adaptation will begin after the official ColorOS 17 release is publicly available. Until then, the ColorOS 16 codebase will continue to receive maintenance and bug fixes.
