QPlayer:跨平台 QML 音乐播放器
一个界面由 QML 渲染、可通过插件扩展在线音源的跨平台音乐播放器,支持 Android 与桌面。
- 浏览
- 4
- 访问
- 0
- 下载
- 0
- 版本
- v1.9.6
- 平台
- Windows、macOS、Linux
详细介绍
项目简介
QPlayer 是一个跨平台、可扩展的音乐播放器,界面全部由 QML 描述,经纯 Java 实现的 QML 运行时 qml4j 渲染。除歌词页正文外,界面不使用任何原生 View;歌词正文(逐字滚动 + 流体背景)由宿主通过 Skija 直接绘制,不走 QML。
Android 与桌面加载同一份 QML 和同一套 player-core 逻辑,也就是同一个界面运行在两个宿主壳中。

主要功能
- 本地音乐库、播放队列、循环与随机播放、睡眠定时。
- 逐字歌词、翻译与罗马音、流体背景;Android 支持词幕。
- 自适应手机、平板与桌面的 Miuix 界面,支持深浅主题、动态配色和可选的液态玻璃。
- 桌面托盘、系统媒体控制;Android 锁屏、通知栏与蓝牙控制。
- 通过插件扩展在线音源、搜索、歌单与账号功能。

安装与使用
从 Releases 下载 Android APK 或对应平台的桌面包。桌面版无需安装 Java。Linux 运行依赖及各平台打包要求见 桌面说明。
自行构建需要 JDK 21 与 Maven,Android 构建还需 Android SDK。
桌面运行:
mvn -q -pl desktop-host -am install
mvn -pl desktop-host exec:exec
Android 构建:
mvn -q -pl player-core -am install
cd android-shell && ./gradlew :app:assembleDebug
APK 输出在 android-shell/app/build/outputs/apk/debug/。macOS 的 JVM 运行需要 -XstartOnFirstThread。
注意事项
- QPlayer 不内置在线音源。未安装音源插件时,它只是一个本地播放器;插件权限在安装时由用户确认。
- QPlayer 不提供在线音源,也不分发受版权保护的媒体,插件作者与用户需自行遵守服务条款及当地法律。
- 登录凭据加密存储,优先使用系统密码库,不可用时可明确选择本地密钥回退;这只提供静态文件保护,不防同用户恶意程序、root/管理员权限或运行时内存读取。
- 项目采用 Apache License 2.0 许可证。
本作品整理自 GitHub 开源项目 TIMER-err/qplayer,原作者 @TIMER-err,许可证 Apache-2.0。中文介绍由 AI 根据项目 README 整理,以原仓库为准。
更新记录
- v1.9.6当前版本
新增睡眠定时,可选 15 至 120 分钟后暂停播放,支持重新计时与取消;统一歌词与界面文本的 Unicode 换行,升级 qml4j 至 0.2.35;修复账户资料与登录状态不一致、歌词页关闭通知时误触歌词定位的问题。
- v1.9.5
包含已撤回的 v1.9.4 全部内容,修复 Android 反复切歌时卡死退出;优化歌词与图片加载、Android 后台初始化与资源释放;修复耳机断开后仍外放、桌面端退出残留进程等问题。
- v1.9.3
桌面端改用 GraalVM Native Image 打包,提供 Linux AppImage、Windows ZIP / 安装程序与 macOS Apple Silicon DMG;随包 QML 组件改为构建期预编译;悬浮歌词支持旋转重定位与锁定;并修复 macOS 退出、Retina 坐标及插件安装崩溃等问题。
评论