Skip to content

v4.1.0

Choose a tag to compare

@Andrea-lyz Andrea-lyz released this 01 Sep 11:51
· 8 commits to main since this release

ColorOS Live Lyrics Bridge v4.1.0

中文

4.1 是一次稳定性与现代 LSPosed API 升级。Bridge 继续只运行于 system
com.android.systemui,播放器专属逻辑仍由 12 个独立 Provider 在播放器自己的
MediaSession 中发布标准 MediaMetadata["lyricInfo"]。本版把全部 Provider 统一迁移到
libxposed API 102,并集中修复 4.0 实机回归、完整代码审查以及歌词/封面边界问题。

12 Provider 全量 API 102 迁移

  • Salt、Cone、酷我、LX、Poweramp、Metrolist、酷狗、QQ、网易云、Apple、Spotify 与汽水
    全部改用唯一的 XposedModule 入口和 META-INF/xposed 现代资源。
  • 12 个 Provider 均声明 minApiVersion=102targetApiVersion=102、静态作用域、
    exceptionMode=protective,并明确关闭 Hot Reload。
  • 移除旧 Hook 入口、旧共享偏好和兼容层;Debug 配置切换到 libxposed Remote Preferences,
    默认仍关闭,开启或关闭后需要完全重启目标播放器进程。
  • 每个 Provider 的 package/process/profile、歌词获取、曲目 generation、翻译 lane、封面、
    PlaybackState 与 action 所有权保持 4.0 已验证语义。
  • 全部 Provider 内部版本统一提升到 1.1.0:Salt versionCode=6,其余 11 个
    versionCode=2,可覆盖安装正式 4.0 Provider。

Bridge 稳定性与歌词修复

  • 收紧 SystemUI 主进程路由,修复 MediaController 回调在控制器切换后的注册/注销与事件代际,
    避免旧控制器或旧歌词结果污染当前曲目。
  • 歌词发布新增本地 epoch 与曲目身份门禁;稳定 track key 优先,缺少身份的 payload 不再跨曲
    复用任意旧歌词。
  • 修复酷狗冷启动首曲身份和时间轴事务:fallback key、mediaId、songId 的同曲补全不再制造
    新 generation;宿主官方 lyric 时间倒退时改用同批 KRC 生成的单调时间轴,完整保留制作
    人员 credit,避免《回家的路》第一句在冷启动时丢失。QQ 音乐正常首句行为保持不变。
  • 统一识别普通空格、NBSP 与 Unicode 空白占位,防止空白行被误判为翻译。
  • 官方歌词自绘失败时立即回退宿主绘制,并确保 Canvas 状态始终恢复,避免单帧空白或后续绘制
    污染。
  • 修复 OPlus 媒体 action 图标在旧 Android API 上的类型读取风险;只有图标反射写入并回读成功
    时才替换/提升翻译 action。
  • 完成反射/Class 缓存、插件 Hook 生命周期、负速率回绕以及设置颜色对话框键盘与无障碍行为的
    稳定性收口。
  • 结构化日志不再记录完整歌词、稳定 media ID、URL query 或私人路径,诊断只保留计数、类型与
    脱敏 hash。

酷我首曲封面

  • 酷我 Provider 在播放器首次歌词早于宿主 metadata 到达时保持当前 MediaSession,避免首曲错过
    立即发布窗口。
  • 对酷我官方封面主机使用 HTTPS、无重定向、有限超时/大小/分辨率的封面补全;结果严格绑定
    track identity 与 generation,切歌后的旧结果会被丢弃。
  • 修复首次打开酷我时首曲封面降级为纯色、后续切歌却正常的问题;后续宿主原生 bitmap 仍优先。

Provider 支持矩阵 / Provider matrix

播放器 / Player 资产 / Asset Provider 内部版本 / Internal version 已验证宿主 / Validated host 歌词能力 / Lyrics
Salt Player ColorOS-Live-Lyrics-Provider-Salt-v4.1.0.apk 1.1.0 (6) 12.3.0-alpha03 逐字、翻译 / Word timing, translations
Cone / GP ColorOS-Live-Lyrics-Provider-Cone-v4.1.0.apk 1.1.0 (2) 1.2.0 profile / GP 完整时间轴、翻译 / Timeline, translations
酷我 / KuWo ColorOS-Live-Lyrics-Provider-KuWo-v4.1.0.apk 1.1.0 (2) 12.2.0.0 官方追加、逐字、翻译 / Official append, word timing, translations
LX / Walnut ColorOS-Live-Lyrics-Provider-LX-v4.1.0.apk 1.1.0 (2) LX 1.8.4 / Walnut 26.07.16 逐字、翻译、蓝牙与封面兼容 / Word timing, translations, Bluetooth/artwork
Poweramp ColorOS-Live-Lyrics-Provider-Poweramp-v4.1.0.apk 1.1.0 (2) build 1025 同目录或内嵌歌词、翻译 / Sidecar or embedded lyrics, translations
Metrolist ColorOS-Live-Lyrics-Provider-Metrolist-v4.1.0.apk 1.1.0 (2) 13.6.1 BetterLyrics/LrcLib/KuGou,不支持翻译 / No translations
酷狗 / KuGou Concept ColorOS-Live-Lyrics-Provider-KuGou-v4.1.0.apk 1.1.0 (2) 20.8.0 / 5.2.61 官方追加、逐字、翻译 / Official append, word timing, translations
QQ 音乐 / QQ Music ColorOS-Live-Lyrics-Provider-QQ-v4.1.0.apk 1.1.0 (2) 20.7.5.8 QRC 逐字、翻译 / QRC word timing, translations
网易云、荣耀、9.0.40 / NetEase, Honor, 9.0.40 ColorOS-Live-Lyrics-Provider-NetEase-v4.1.0.apk 1.1.0 (2) 9.5.70 / 3.5.20 / 9.0.40 官方追加或构造、翻译 / Official append or constructed, translations
Apple Music ColorOS-Live-Lyrics-Provider-Apple-v4.1.0.apk 1.1.0 (2) 6.5.2 JNI TTML 逐字、翻译 / JNI TTML word timing, translations
Spotify ColorOS-Live-Lyrics-Provider-Spotify-v4.1.0.apk 1.1.0 (2) 9.1.78.2208 Color Lyrics 逐行或逐字,不支持翻译 / Line or word timing, no translations
汽水音乐 / QiShui ColorOS-Live-Lyrics-Provider-QiShui-v4.1.0.apk 1.1.0 (2) 20.7.0 TrackLyric/缓存、逐字、翻译 / TrackLyric/cache, word timing, translations

从 4.0 升级

  1. 需要支持 libxposed API 102 的 LSPosed/LSP 环境;建议使用 LSPosed 2.2.0 或更新版本。
  2. 使用正式 ColorOS-Live-Lyrics-Bridge-v4.1.0.apk 覆盖安装 4.0.0,Bridge 作用域仍只保留
    systemcom.android.systemui
  3. 使用同一 4.1.0 Release 中自己需要的 Provider APK 覆盖 4.0 Provider,并保持每个 Provider
    只勾选对应播放器。
  4. Provider Debug 已迁移到 Remote Preferences,升级后会按默认关闭处理;需要日志时重新打开
    Debug,并完全停止后重启播放器。
  5. 本版不支持 Hot Reload。更新 Provider、修改作用域或切换 Debug 后必须重启目标进程;首次
    升级建议重启设备。
  6. 不要让旧词幕 Provider 与当前 Provider 同时 Hook 同一播放器。

需要回滚时可重新安装 4.0.0 正式 Bridge 与对应 Provider。Provider applicationId 和正式签名
保持不变;若 Android 阻止降版本,需要使用允许版本降级的安装方式。Bridge 设置 schema 未
变更,但仍建议升级前导出完整配置备份。

验证

  • 12/12 Provider 已完成 API 102 资源、入口、scope、依赖、Remote Preferences、legacy 字符串、
    单元测试和 Debug 全矩阵门禁;488 tests,0 failure/error/skip,生成恰好 12 个 Debug APK。
  • Wave A–E 覆盖全部 12 个 Provider 及多宿主/profile 的用户真机回归;网易云 9.0.40 构造
    profile 按其特殊安装前提验收。
  • 本次 Bridge 审查修复通过 503 tests(0 failure/error,6 项明确 skipped)、debug/release
    lint(0 error)与 Debug 构建门禁;酷狗首句、酷我首曲封面和 OPlus 媒体 action 崩溃路径
    均由用户实机确认。
  • 正式签名 RC/GA 流水线会重新构建 13 个 APK,并校验 R8、包名、内部版本、API 102 资源、
    scope、证书、zipalign、DEX 禁用字符串、16 项资产与 SHA-256。

已知限制

  • ColorOS 锁屏歌词属于私有 SystemUI 功能,系统更新后可能需要重新适配。
  • 播放器私有歌词接口可能随播放器更新变化。
  • Spotify 与 Metrolist 当前不提供翻译;QQ 音乐 HD 不在支持矩阵。
  • 歌词源没有逐字或翻译 lane 时,Bridge 不会凭空生成。
  • 4.1 Provider 要求 libxposed API 102;不提供旧 Hook API 回退或 Hot Reload。

本项目不分发词幕 Provider。需要词幕时请前往
LyricProvider 原项目,词幕显示或产品问题也请
向原项目反馈。

开发文档、致谢与支持

感谢 tomakino/LyricProvider 原项目及贡献者、Accompanist Lyrics Core,以及提供播放器样本、
SystemUI 证据、日志、录屏和实机验证的所有用户。第三方来源与许可证保留在 Bridge
LICENSE、Provider NOTICE、源码头和迁移报告中。

如果项目对你有帮助,可在
Bridge README 查看支持方式。
支持完全自愿,不影响 Issue 优先级或 Release 资产获取。


English

4.1 is a stability and modern LSPosed API release. Bridge remains limited to system and
com.android.systemui; player-specific code still lives in 12 independent Providers that publish
standard MediaMetadata["lyricInfo"] through player-owned MediaSessions. This release migrates the
entire Provider matrix to libxposed API 102 and closes the 4.0 device regressions, full code-review
findings, and lyric/artwork edge cases.

Complete 12-Provider API 102 migration

  • Salt, Cone, KuWo, LX, Poweramp, Metrolist, KuGou, QQ, NetEase, Apple, Spotify, and QiShui now use
    a single XposedModule entry and modern META-INF/xposed resources.
  • Every Provider declares API 102 as both minimum and target, static scope, protective exception
    mode, and explicitly disabled Hot Reload.
  • Legacy hook entries, preferences, and compatibility layers were removed. Debug configuration now
    uses libxposed Remote Preferences, remains off by default, and takes effect after a full player
    process restart.
  • Existing package/process profiles, lyric acquisition, track generation, translation lanes,
    artwork, PlaybackState, and action ownership preserve the device-validated 4.0 behavior.
  • All Provider internal versions move to 1.1.0: Salt uses versionCode=6; the other 11 use
    versionCode=2, allowing in-place upgrades from the official 4.0 packages.

Bridge stability and lyric fixes

  • Tightened the SystemUI main-process route and repaired MediaController callback registration,
    teardown, and event epochs across controller changes.
  • Added local publication epochs and track-identity gates. Stable track keys are authoritative, and
    identity-free payloads can no longer retain arbitrary lyrics across tracks.
  • Fixed KuGou cold-start identity and timeline transactions. Enriching the same track from a
    fallback key to mediaId/songId no longer advances generation; a non-monotonic official lyric
    is replaced by a monotonic timeline generated from the same KRC while retaining every production
    credit. This prevents the first real line from disappearing and preserves the correct QQ path.
  • Unified normal spaces, NBSP, and Unicode whitespace placeholder handling.
  • Renderer failures immediately fall back to host drawing and always restore Canvas state.
  • Removed the old-API OPlus media-action icon type risk; translation action replacement/promotion
    now requires successful semantic icon writeback and readback.
  • Closed reflection/cache, plugin-hook lifecycle, negative rewind, settings keyboard, and
    accessibility issues.
  • Structured diagnostics no longer expose full lyrics, stable media IDs, URL queries, or private
    local paths.

First-track KuWo artwork

  • KuWo keeps the current MediaSession when lyrics arrive before the first host metadata update, so
    the first-track publication window is not lost.
  • Official KuWo artwork hosts are fetched over HTTPS with no redirects and bounded timeout, size,
    and dimensions. Completion is tied to track identity and generation; stale results are dropped.
  • This fixes the first KuWo track degrading to a solid color while later track changes work. A
    later host-provided bitmap still has priority.

The single bilingual Provider matrix above is shared by both language sections.

Upgrade from 4.0

  1. Use an LSPosed/LSP environment that supports libxposed API 102; LSPosed 2.2.0 or newer is
    recommended.
  2. Install the official ColorOS-Live-Lyrics-Bridge-v4.1.0.apk over 4.0.0 and keep Bridge scope
    limited to system and com.android.systemui.
  3. Install the matching Provider APKs from the same 4.1.0 Release over their 4.0 versions, keeping
    each Provider scoped only to its player.
  4. Provider Debug moved to Remote Preferences and starts from the disabled default after upgrade.
    Re-enable it when logs are needed, then fully restart the player.
  5. Hot Reload is not supported. Restart the target process after Provider, scope, or Debug changes;
    a device reboot is recommended for the first upgrade.
  6. Never let an old Lyricon Provider and the current Provider hook the same player simultaneously.

Rollback uses the official 4.0.0 Bridge and Provider packages. Application IDs and release signing
remain unchanged; Android may require an install method that explicitly permits version downgrade.
The Bridge settings schema is unchanged, but exporting a complete backup before upgrade is still
recommended.

Validation

  • All 12 Providers passed API 102 resource, entry, scope, dependency, Remote Preferences, legacy
    string, unit-test, and debug-matrix gates: 488 tests with no failures, errors, or skips, and exactly
    12 debug APKs.
  • User-run Wave A–E device regression covered all Providers and multi-host/process profiles;
    NetEase 9.0.40 was accepted under its documented special installation prerequisite.
  • The Bridge review fixes passed 503 tests (no failures/errors, six explicit skips), debug/release
    lint with no errors, and the debug build gate. The KuGou first line, first-track KuWo artwork, and
    OPlus media-action crash paths were confirmed on device by the user.
  • The signed RC/GA workflow rebuilds all 13 APKs and verifies R8, package IDs, internal versions,
    API 102 resources, scopes, certificate, zipalign, forbidden DEX strings, 16 assets, and SHA-256.

Known limits

  • ColorOS lock-screen lyrics are a private SystemUI feature and may require renewed compatibility
    work after system updates.
  • Player-private lyric APIs can change after player updates.
  • Spotify and Metrolist currently have no translations; QQ Music HD is outside the matrix.
  • Bridge cannot invent word timing or translations absent from the source.
  • 4.1 Providers require libxposed API 102; there is no legacy hook fallback or Hot Reload support.

This project does not distribute Lyricon Providers. Obtain them from the
original LyricProvider project, and report Lyricon
display/product issues there.

Developer documentation, acknowledgements, and support

Thanks to the original tomakino/LyricProvider project and contributors, Accompanist Lyrics Core,
and everyone who supplied player samples, SystemUI evidence, logs, recordings, and device
validation. Third-party provenance and licenses remain in the Bridge LICENSE, Provider NOTICE,
source headers, and migration reports.

Support is optional and never changes issue priority or access to release assets. See the
Bridge README for
support options.

Assets / 发布资产

The Release contains exactly 16 files / Release 恰好包含 16 项文件:

  • ColorOS-Live-Lyrics-Bridge-v4.1.0.apk
  • ColorOS-Live-Lyrics-Provider-Salt-v4.1.0.apk
  • ColorOS-Live-Lyrics-Provider-Cone-v4.1.0.apk
  • ColorOS-Live-Lyrics-Provider-KuWo-v4.1.0.apk
  • ColorOS-Live-Lyrics-Provider-LX-v4.1.0.apk
  • ColorOS-Live-Lyrics-Provider-Poweramp-v4.1.0.apk
  • ColorOS-Live-Lyrics-Provider-Metrolist-v4.1.0.apk
  • ColorOS-Live-Lyrics-Provider-KuGou-v4.1.0.apk
  • ColorOS-Live-Lyrics-Provider-QQ-v4.1.0.apk
  • ColorOS-Live-Lyrics-Provider-NetEase-v4.1.0.apk
  • ColorOS-Live-Lyrics-Provider-Apple-v4.1.0.apk
  • ColorOS-Live-Lyrics-Provider-Spotify-v4.1.0.apk
  • ColorOS-Live-Lyrics-Provider-QiShui-v4.1.0.apk
  • ColorOS-Live-Lyrics-Providers-v4.1.0.zip
  • release-assets-v4.1.0.json
  • SHA256SUMS

The Provider ZIP is an APK download bundle, not a Recovery package. / Provider ZIP 只是 APK 下载
合集,不是 Recovery 刷机包。

Donate

WeChat and Alipay donation QR code