移动版与桌面版的功能差异总览
两个独立项目
移动版和桌面版是完全独立的两个仓库,版本号、技术栈、发版节奏都互不相同:
- 桌面版:lyswhut/lx-music-desktop(Electron + Vue 3)
- 移动版:lyswhut/lx-music-mobile(React Native + Redux)
功能对照表
| 功能 | 桌面版 | 移动版 | 差异说明 |
|---|---|---|---|
| 歌曲下载 | ✅ 支持(需手动启用) | ❌ 不支持 | 移动版暂不提供下载功能 |
| 开放 HTTP API | ✅ v2.7.0+ 支持 | ❌ 不支持 | 仅桌面版提供 HTTP / SSE 接口 |
| Scheme URL | ✅ 支持 | ✅ 支持(v1.6.0+) | 两端都有但协议细节可能不同 |
| 快捷键 | ✅ 完整支持 | ❌ 不适用 | 桌面版有键盘 |
| 跨端同步 | ✅ 可做服务端 + 客户端 | ⚠️ 仅做客户端 | 移动版只能连别人的服务 |
| 桌面歌词 | ✅ 完整支持 | ✅ 支持(需悬浮窗权限) | Android 6.0+ 需额外权限 |
| 状态栏歌词 | ❌ 不适用 | ⚠️ 特别版支持 | 文件名带 sl 的版本才有 |
| 多选方式 | Ctrl / Shift + 单击 | 长按进入多选 | 完全不同的交互方式 |
| 启动参数 | ✅ 支持 | ❌ 不适用 | 命令行参数仅桌面版 |
| 数据迁移 | ✅ 可直接复制数据目录 | ❌ 沙箱隔离 | 移动版数据在系统沙箱内 |
| 本地歌曲 | ✅ 支持 | ✅ 支持 | 两端都能导入本地音频 |
| 自定义源脚本 | ✅ 完整支持 | ✅ 支持但能力略受限 | 接口规范相同但宿主环境不同 |
移动版的定位
移动版(Android)的定位是在手机上延续桌面版的听歌体验:
- 搜索和播放:与桌面版同样依赖自定义源脚本,核心搜索播放功能一致。
- 收藏和歌单:与桌面版同样结构(我的列表、收藏在线歌单等)。
- 跨端同步:移动版作为客户端,连接桌面版服务端或独立同步服务,将手机上的收藏与电脑保持一致。
- 轻量便携:手机上随时掏出听歌,不需要依赖电脑。
移动版独有的功能
| 功能 | 说明 |
|---|---|
| 长按多选 | 桌面版用 Ctrl + 单击,移动版用长按进入多选模式 |
| 状态栏歌词(特别版) | 文件名带 sl 的版本支持系统状态栏显示歌词 |
| 息屏后台播放 | 播放服务注册后,息屏或切后台时音乐继续播放 |
| Android 通知栏控制 | 通知栏显示当前歌曲和播放控制按钮 |
移动版不支持的功能
以下是移动版目前明确不支持的功能:
- 歌曲下载:桌面版默认关闭但可手动启用,移动版暂不提供下载功能。
- 开放 HTTP API / SSE:没有本地 HTTP 服务。
- iOS 和 HarmonyOS NEXT:开发者明确表示暂无开发计划。
- 启动参数 / 便携模式:不适用。
- 桌面版的某些高级操作(如拖动模式调整列表顺序):可能没有移动端实现。
平台支持范围
| 平台 | 移动版支持吗 |
|---|---|
| Android 5.0+ | ✅ 支持 |
| iOS | ❌ 暂无计划 |
| HarmonyOS NEXT | ❌ 暂无计划 |
推荐的使用方式
- 主力在电脑:桌面版为主,移动版为随身补充。两者通过同步功能保持收藏一致。
- 主力在手机:移动版为主,但需要接受「不能下载」的限制。
- 全平台:两端都装,桌面版可以同时做同步服务端。