GitHub Releases
← 返回首页

版本更新记录

HMP 的功能演进与变更历史 · GitHub Releases

v7.2.3 2026-10-07 Latest
Android 播放修复
  • 修复退到后台后当前歌曲播完不再自动播放下一首:上一版在后台自然播完时会中断播放,并导致播放进程退出
  • 修复播放控制与播放服务的生命周期耦合 —— 应用退到后台或切换界面后不再丢失对播放器的控制
  • 修复后台状态下重建播放通知时被系统判定为非法调用的问题 —— 该问题会直接终止播放进程
已知限制
  • 本次仅修复 Android 端;桌面端与 iOS 端不受此问题影响
v7.2.2 2026-09-28
发版与构建工具链
  • 应用功能与界面在本版本没有变化:本次是工程与发版链路的调整
  • 版本号声明从 9 处手工抄写收敛为仓库根 release.toml 一处,其余位置改由脚本同步并校验
  • 发布说明改由配置渲染,此前会把内部路线图章节一并公开(上一版实测泄漏 172 行,发布后靠人工删)
  • 桌面各端产物的收集、改名与齐全断言由同一份配置驱动,缺任一平台直接拒绝发布,不再静默出缺平台的包
  • 合入前新增预检:版本声明不一致或发布说明渲染异常会在 PR 上就报错,而不是等发布失败才发现
站点与文档修正
  • 移除下载页指向不存在资产的 Linux AppImage 按钮(点开必然 404),Linux 只提供 DEB
  • 修正 README / CLAUDE / DEVELOP 里过期的版本口径、iOS 部署目标(26.3)与 Kotlin 版本要求(2.3.21)
v7.2.1 2026-09-25
发版通道修复
  • 修复桌面端 macOS / Windows / Linux 三平台打包失败,v7.2.1 起发版通道恢复正常:DMG / MSI / DEB 三端安装包齐备
  • 桌面安装包首次确认真正带上解码库(FFmpeg):此前 macOS / Linux 的包里其实一直缺它,部分格式播不了而无人察觉
  • Linux 只发布 DEB,不再提供 AppImage(打包工具产不出真正的 .AppImage 文件,旧产物是解包目录)
  • Windows:改用 bash 并显式注入 WiX candle / light,MSI 打包恢复正常
  • 解码库下载源统一到本仓库 Release,并按 SHA256 与真实 CPU 架构校验,不符立即失败
稳定性
  • 发版前自动校验版本号自洽与递增,并核对站点 / iOS 多端版本声明是否同步
  • 产物缺失时拒绝发布:Release 必需文件不全即中断,不再发布缺平台的版本
v7.2.0 2026-09-24 未发布
AI 音乐伙伴
  • 本版没有安装包:当时发版通道卡在桌面端打包,下列功能全部随 v7.2.1 分发,下载请取 v7.2.1
  • 对话式曲库操作:用自然语言找歌、问答、生成与整理播放列表,并可直接控制播放
  • AI 电台:播完一首后基于当前上下文自动续接队列
  • 听歌报告与用户认识:偏好画像、分级记忆与「遗忘唤醒」,伙伴设置页统一收拢各角色参数
  • 破坏性操作全部经界面确认与权限分级护栏;Token 用量可视化
界面自适应与多语言
  • 手机 / 平板 / 桌面断点自适应,关键页面支持横屏布局
  • 界面文案统一收拢,覆盖 14 种语言
站点与稳定性
  • 官网改版:多页面结构、动态背景与多语言,版本信息与 Release 自动同步
  • 三端首启引导修复与横屏适配、音乐库扫描提速
  • 桌面端修复播放队列丢失与解码库架构不匹配问题
v7.1.0 2026-08-26
iOS 全面切换到共享层
  • iOS 默认入口切换到共享层 Compose 界面,删除 68 个 SwiftUI 页面与组件
  • Swift 侧收敛为 17 个文件,仅保留 AppDelegate、播放引擎、Live Activity 等原生能力
  • Android、桌面端、iOS 三端共用同一套界面代码,新功能默认三端同时交付
架构
  • Koin 升级 4.2.2,与 lifecycle 2.10 稳定 ID 对齐
v7.0.0 2026-08-21
shared-ui 跨平台迁移
  • 118 个 UI 文件迁入 commonMain,Android 与桌面端共用一套 Compose 界面
  • 新增平台桥接三件套:PlaybackController / AlbumArtPixelsLoader / PlatformServices
  • 删除旧的 desktop/feature-ui 与 android/feature-ui 模块
体积与清理
  • 图标资源迁至编译期 composeResources,58 个 PNG 转为 WebP
  • APK 体积从 46.9MB 降至 13.2MB(下载包 7.1MB)
  • 删除 6 个死文件、约 180 个冗余资源与 18 个空目录,净减 2521 行代码
修复
  • 恢复首启 IntroScreen 引导流程
v6.13.1 2026-08-12
Google Play 合规
  • 移除 MANAGE_EXTERNAL_STORAGE(“所有文件访问”)权限,符合 Google Play 政策
  • 音乐标签编辑改用 Storage Access Framework(SAF):保存时通过系统文件选择器授权,写入后自动刷新媒体库
质量保障
  • 新增 SAF 写入路径与曲库刷新单元测试
v6.13.0 2026-08-12
歌词逐字显示
  • 新增歌词 逐字高亮(卡拉 OK)显示,跟随当前播放进度
  • 逐字显示平滑优化,歌词默认呈现升级
音乐标签编辑
  • 支持编辑单曲 ID3 标签:标题、艺术家、专辑、年份、流派、音轨、歌词、封面
  • 优化标签编辑页 UI 与交互,Android / Desktop / iOS 三平台支持
架构优化
  • ViewModel 生命周期修复、作用域统一与上帝对象拆分
  • SettingsViewModel 拆分为多个独立 ViewModel,修复导航单元测试缺陷
v6.12.0 2026-08-10
国际化扩展
  • 新增 12 种语言:日/韩/西/法/德/葡/俄/阿/印地/泰/越/印尼
  • 每种语言 450+ 条字符串,占位符与换行符正确保留
  • 应用合计支持 14 种语言
质量保障
  • 补全单元测试 650+ 用例,覆盖 shared / desktop / android 全模块
  • 引入 FakeRepository、FakeAudioEngine、Room in-memory 测试库、Robolectric + MockK
v6.11.2 2026-07-23
构建与配置
  • 版本号与构建配置更新(gradle.properties)
v6.11.1 2026-07-23
R8 优化
  • 启用 -repackageclasses,收窄 ProGuard keep 规则
  • 移除 Compose/Koin/Media3/Room/Navigation3 等宽泛库保留规则
  • 替换为精确的 Room Entity、@Serializable、ViewModel 保留规则
CI/CD 发版流程优化
  • 添加 Gradle 构建缓存,移除 --rerun-tasks
  • 新增构建前校验(单元测试 + 版本号重复检测)
  • Android 与桌面端构建并行化,不再互相阻塞
  • Release Notes 按 commit 类型自动分类展示
  • 新增产物 SHA256 校验文件
  • 支持 workflow_dispatch 手动触发 PATCH 发版
v6.10 2026-05-20
桌面端平台
  • Compose Multiplatform 桌面端(JVM)
  • 自研音频引擎(FFmpeg 解码 + JNA 绑定)
  • 响应式布局系统(Compact/Expanded 模式、多面板导航)
  • NavigationRail + BottomFusionBar 自适应导航组件
  • 无边框窗口(标题栏、拖拽、圆角阴影、主题集成)
  • 键盘快捷键支持
  • 动态背景重构与主题系统优化
  • 冷启动优化(同步预加载、JNA 预热)
Android 增强
  • BottomFusionBar 组件(底部融合栏替代 MiniPlayerBar)
  • 动态背景取色算法重构
构建与 CI
  • settings.gradle.kts 条件化模块包含(HMP_BUILD_TARGET 环境变量)
  • CI 自动构建桌面三平台安装包(macOS DMG / Windows MSI / Linux DEB)
  • GitHub Release 同发 Android + Desktop 六种产物
展开全部 ↓ 收起 ↑
v5.10 2026-05-09
跨平台架构迁移
  • 实现 Kotlin Multiplatform Mobile (KMM) 架构
  • 迁移 core-domain 和 core-data 层到 shared 模块
  • 配置 CocoaPods 集成,支持 iOS 平台
  • 创建 iOS 平台特定实现(11 个 expect/actual 声明)
  • 完成 iOS 应用的构建和基本 UI 显示
iOS 核心功能
  • 播放引擎(AVPlayer + MusicPlayerController 单例)
  • 锁屏控制与远程命令(NowPlayingInfoManager + RemoteCommandManager)
  • Live Activity 与灵动岛(LiveActivityManager)
  • 音乐扫描(DeviceMusicScanner + MusicTagParser Bridge)
  • 8 个 ViewModel 实现完毕
  • SwiftUI 界面大规模实现:音乐库/播放器/播放列表/设置四大模块
发布流程重构
  • 版本号集中管理到 gradle.properties
  • 新增 Gradle release 任务(releaseAndroid / releaseIos / release)
  • Release 构建启用代码混淆和资源压缩
  • CI/CD 自动发布 GitHub Release
展开全部 ↓ 收起 ↑
v5.9 2026-04-17
代码组织与播放器重构
  • 拆分 PlayControlViewModel 为多个专用 ViewModel
  • 重构播放器界面结构,优化播放控制逻辑
  • 按功能模块重新组织包结构
  • 实现音乐详情弹窗的分享功能(支持分享音频文件)
  • 优化「下一首播放」逻辑
v5.8 2026-04-01
架构升级与 UI 优化
  • 迁移到 Navigation 3 和 Gradle 9.0
  • 重构导航系统为集中式路由管理
  • 新增专辑页面及功能
  • 添加毛玻璃效果相关设置和优化弹窗功能
  • 简化应用名称与开启代码混淆
v5.7 2026-03-17
播放列表管理补全
  • 用户自定义播放列表全流程支持
  • 新建/重命名/删除(含确认)、列表内拖拽排序
  • 从播放列表移除单曲
v5.6 2026-02-24
功能
  • 新增独立歌词页面及其设置面板
  • 添加智能播放列表生成算法及 UI 支持
  • 重构歌曲详情页面并新增详情视图模型
v5.5 2026-02-05
功能
  • 实现 UI 字符串国际化并优化组件样式
  • 添加动态背景风格选择与改进动画效果
  • 替换智能歌词组件为高级歌词组件,支持歌词显示参数配置及管理
v5.4 2026-01-14
重构与优化
  • 实现 Hilt 导航组件集成与音乐控制器重构
  • 重构列表页面,新增多样化播放列表展示组件
  • 优化用户界面和听歌时长热力图展示
  • 修复音乐列表快速滑动时的崩溃问题
v5.3 2025-12-30
AI 推荐系统
  • 实现多 AI 服务商支持(DeepSeek、OpenAI、Claude、通义千问、文心一言)
  • 添加 AI 服务商配置界面,支持自由切换
  • 实现 API 密钥加密存储机制
  • 实现每日推荐刷新策略系统
  • 优化 AI 批量处理流程,支持暂停、继续、取消操作
v5.2 2025-12-03
功能与体验
  • 添加触觉反馈增强用户体验
  • 实现动态主题设置
  • 添加按艺术家页面
  • 添加自定义主题和 AI 功能页面
  • 添加音频效果屏幕并重构用户界面
v5.0 2025-11-20
模块化架构
  • 模块化架构迁移完成
  • 实现 Hilt 依赖注入
  • 升级数据库版本支持分页查询
  • 迁移到 Media3 MediaSession
v4.0 2025-05-06
重构
  • 重构代码结构,优化播放逻辑
  • 提升应用稳定性
v3.0 2025-05-06
优化
  • 优化 MusicViewModel 逻辑
  • 完善播放控制功能
v2.0 2025-04-23
首个可运行版本
  • 实现播放列表功能
  • 添加基础播放控制功能
v1.0 2025-03-31
项目诞生
  • 项目初始化,创建基础项目结构
  • 配置 Git 仓库

保持更新

每个版本都会在 GitHub Releases 同步发布安装包与校验值。

© 2026 Hearable Music Player · By WLYB · 隐私政策