github cwuom/NeriPlayer NeriPlayer-2b2faa3.03161126

NeriPlayer 更新日志

更新时间:2026-03-16


一、 播放器核心与后台恢复增强

  • 播放状态深度持久化:重构恢复链路,除进度外,现可完整记录播放队列、索引、媒体 URL、循环/随机模式及恢复意图。进程重启后上下文更接近离开前状态。
  • 播放过渡可配置化:新增播放淡入、暂停淡出及切歌交叉淡化,支持前后段时长独立调节。
  • 音频焦点与策略优化:新增“蓝牙断开自动停止”与“允许混合播放”设置;曲终推进增加去重保护,降低连跳风险。
  • 服务启动安全性:仅在前台服务真正拉起成功后执行恢复播放,若系统限制拉起则自动放弃,避免通知栏卡死。
  • 下载控制集成:正在播放页菜单接入实时下载状态,支持单曲下载、取消、重试,并实现单曲与队列取消逻辑解耦。

二、 本地媒体与数据同步重构

  • 本地歌单交互升级:落地基于歌曲 Identity 的持久化拖拽排序;本地扫描新增过滤逻辑与多维度稳定排序,扫描为空时不再覆盖已有数据。
  • 网易云同步流程重做
    • 两段式同步:先生成候选计划(自动识别云端未喜欢歌曲),待用户二次勾选后执行。
    • 指纹判重:引入“歌名 + 歌手 + 时长桶”指纹校验,结合喜欢列表与歌单详情双链路复核。
  • 同步“墓碑”模型:最近播放删除操作将生成同步墓碑。跨设备同步时优先应用墓碑过滤,彻底解决删除记录被其他设备“同步回来”的顽疾。
  • 数据一致性保护:下行同步时强制保留当前设备的本地专属歌曲与文件系统歌单,防止云端数据覆盖本地内容。

三、 首页、探索与导航稳定性

  • 分区独立加载:首页“继续播放、热歌、雷达、推荐”四个模块逻辑解耦,单个模块失败不再导致全屏空白;请求增加 3 次自动重试机制。
  • 卡片自由开关:首页四项卡片均支持独立隐藏。全关时界面提供明确指引,且底部导航栏入口同步动态隐藏。

四、 视觉动效与设置中心

  • 行为控制面板:新增默认启动页设置(首页/探索/媒体库等);新增全局自动弹出软键盘开关,覆盖搜索场景。
  • 动效门控与互斥
    • Android 12+:支持高级模糊、封面模糊背景。
    • Android 13+:支持动态背景、音频响应背景。
    • 封面模糊与动态背景自动互斥,避免性能冲突。
  • 歌词体验优化:手动滚动时当前句保持清晰,待播放推进至下一句时自动解除模糊;

五、 工程维护与发布链路

  • SDK 版本提升:minSdk 提升至 28,停止对 Android 8.x 的支持。
  • 发布策略调整:日常 Release 仅产出 arm64-v8a 架构以缩减体积;手动发布工作流支持全 ABI 构建,并自动生成 Release Notes。
  • 代码质量控制:启用 legacy dex packaging 优化包体积;README 与协作规范按最新 Android 实现重写。

不稳定性警告

本次更新涉及持久化模型、同步逻辑及首页架构的深度重构。

  1. 升级前务必备份本地歌单与同步数据,防止旧模型迁移异常。
  2. 重点观察:跨端删除记录是否生效、收藏歌单顺序是否跳变、本地/在线混合歌单是否丢失。
  3. Android 8.x 设备请勿尝试覆盖安装。

Full Changelog: NeriPlayer-dd5942c.03120751...NeriPlayer-2b2faa3.03161126

Commits

  • 2b2faa3 ci: implement manual release workflow and enhance build configuration
  • 0066758 [skip ci] chore: clean up code
  • 779d2a5 feat: enhance playback logic, UI transitions, and sync reliability
  • 47819c9 docs: rewrite README and CONTRIBUTING for technical accuracy
  • f27146b feat: refine playback behavior and persistence when application is cleared from recent tasks
  • 6cf0607 feat: enhance playback persistence, cover resolution, and playlist management
  • 6831b44 docs: remove outdated information about NetEase Cloud Music API limitations
  • 18295c7 feat: enhance UI effects and download management
  • 53928b9 docs: remove period from data saver description
  • a51af7a docs: improve blur background descriptions
  • 0cf9880 feat: add blurred cover background and NetEase liked sync
  • 1eb1599 fix: stop auto resume on sync
  • e92dfff fix: adjust local song copy clipboard
  • 00b4ee4 fix: shorten data saver description
  • 4ac3167 fix: remove mini player overlay mask
  • 6adab4e feat: expand playback and motion settings
  • f028291 chore: suppress unused warnings
  • dc4bbc3 feat: merge blur controls and mini player opacity
  • bdf3754 fix: gate home sections by login
  • aecd2ef fix: prevent autoplay after task removal
  • 10dfd30 feat: add motion settings controls
  • a2a2ebf fix: stabilize home load and foreground service
  • 338583f fix: stabilize local scan result ordering
  • 1650361 feat: enable predictive back on host screens
  • da1ccbe feat: honor playback transition settings
  • 1bbbbb2 fix: support cancelling downloads from now playing
  • e950d76 fix: stabilize collapsed explore tags
  • 3a1a9e8 fix: keep home recommendations resilient
  • 47775ce fix: prevent deleted recent plays from syncing back
  • 110a63c feat: add startup and playback preference controls

Don't miss a new NeriPlayer release

NewReleases is sending notifications on new releases.