| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
基于 SPlayer 移植与重做的 Android 音乐播放器。保留原版精华,针对手机与平板彻底重构交互——一个能装进口袋的 SPlayer 🎶
致一直关注 SPlayer for Android 的大家:这段时间开发者的身体偶有不适,心理状态也出现了一些问题,很抱歉因此推迟了这么久才更新。感谢大家的理解与耐心,我会尽快调整和恢复自己的身体与心理状态,也会在状态允许时继续维护项目。
| 📱 手机 | 💻 平板 |
![]() |
![]() |
![]() |
![]() |
![]() |
| 分类 | 描述 |
|---|---|
| 🎨 双端 UI | 手机 / 平板自适应布局,沉浸式全屏,状态栏可切换 |
| 📐 手机端布局 | 全宽贴底底栏 + 圆角浮岛播放栏,底栏选中态滑动指示器;列表 / 卡片 / 设置项轻度紧凑 |
| 🔍 页面缩放 | 50%–150% 全局缩放,缩小后等效视口变宽,达到阈值可切换 Pad 布局(尚未完全适配) |
| 🎵 播放引擎 | 原生 ExoPlayer + WebView 双引擎,长时间后台稳定,seek / gapless 切歌进度条同步 |
| 📝 逐字歌词 | 毫秒级插值高亮,翻译 / 罗马音,拖动吸附最近行,支持全局歌词偏移 |
| 📂 本地音乐 | 自动扫描本地歌曲,支持 TTML / LRC 歌词匹配(同目录 / 独立歌词目录),与桌面端行为对齐 |
| ☁️ WebDAV 音乐 | 通过 WebDAV 连接远程音乐,在线播放与浏览,扩展私人曲库 |
| 🪟 桌面歌词 | WindowManager 悬浮窗,逐字动画、锁定穿透、拖拽、播控 |
| 🔔 通知栏 | 原生 MediaSession,完整播控,支持桌面歌词一键开关 |
| 🎚️ 精细控制 | 渐入渐出、进度吸附歌词、允许与其他应用同时播放 |
| 🌐 在线音乐 | 网易云 + Jellyfin / Navidrome / Emby / Subsonic / OpenSubsonic / Last.fm |
| 🔗 网络代理 | 支持配置 HTTP/HTTPS 代理,内置逆向 API 请求可走代理访问网易云接口 |
| ⬇️ 音乐下载 | 开发者模式下可下载歌曲至 SAF 授权目录,支持自定义子目录分类、歌词/ASS 附件下载 |
| 🧩 内置 API | nodejs-mobile-cordova 嵌入网易云 API,离线可用 |
| 📦 分架构打包 | arm64-v8a / armeabi-v7a / x86_64 / x86 独立 APK |
最低要求:Android 10(API 29)
⚠️ 更早的 Android 版本(Android 9 及以下)没有计划去实现支持。原因是:
- 旧版 Android 性能不足以流畅运行本应用的 WebView 渲染和音频处理
- Android 10 以下可用的系统 API 较少,无法实现 SAF 文件访问、MediaStyle 通知、深色模式适配等核心功能
- 这些版本的设备硬件早已过时,完全不适合运行本应用
前往 Releases 选择对应 CPU 架构的 APK:
| ABI | 适用设备 | 推荐度 |
|---|---|---|
| arm64-v8a | 绝大多数现代手机 / 平板 | ⭐⭐⭐⭐⭐ |
| armeabi-v7a | 2015 年前的老旧 32 位 ARM 设备 | ⭐⭐ |
| x86_64 | Intel 平板、Android 模拟器 | ⭐ |
| x86 | 极少数 32 位 Intel 设备 | ⭐ |
💡 不清楚自己设备架构?装个 CPU-Z,或者无脑选 arm64-v8a——99% 都是它。
完整更新记录请查看 CHANGELOG.md
v3.0.0-rc.4 主要更新:
v3.0.0-rc.3 主要更新:
| 工具 | 版本 |
|---|---|
| Node.js | >= 20 |
| pnpm | >= 10 |
| JDK | 21 |
| Android SDK / NDK | 最新 |
pnpm install
pnpm build:android
cd android && ./gradlew assembleDebug产物:android/app/build/outputs/apk/debug/(按 ABI 分包)
pnpm build:web # 前端 Vite 构建
pnpm build:android:node # 内置 Node API Bundle
pnpm prepare:android:embedded # 准备嵌入资源
npx cap sync android # 同步 Capacitor 工程
npx cap open android # Android Studio 打开需要授予 SYSTEM_ALERT_WINDOW(显示在其他应用上层) 权限。首次启用会自动引导,如果拒绝过,可以去 系统设置 → 应用 → SPlayer → 权限 里手动开启。
🎧 想和其他应用同时播放?进入 设置 → 播放 → Android 系统设置 → 允许与其他应用同时播放。
📦 我该下载哪个 APK?⚠️ 注意:开启后将切换为 ExoPlayer 引擎(handleAudioFocus=false),不再抢占音频焦点,可与其他应用同时播放。
无脑选 arm64-v8a。只有极老的设备(通常 2015 年前)才需要 armeabi-v7a。x86 / x86_64 几乎只用于模拟器。
🖥️ 能在电脑上运行吗?本仓库已剥离 Electron 桌面端打包链路,仅保留 Android 构建。需要桌面版请前往 原版 SPlayer。
🔕 通知栏控制器不显示?支持。通知栏控制器启用后,应用进入后台仍会继续播放,不会被系统快速回收。
📂 本地歌词不显示?
|
SPlayer for Android 交流群 群号:602750631 一键加群:https://qm.qq.com/q/AjIqKftqgM 群内可讨论使用问题、交流经验,也欢迎反馈 Bug。 ⚠️ Bug 反馈仍建议优先 提交 Issue,便于跟踪与修复。 |
手动触发 Android Release 工作流即可分架构构建 & 发布 APK。
签名所需 Secrets:
| Secret | 说明 |
|---|---|
| ANDROID_KEYSTORE_BASE64 | Keystore 的 Base64 编码 |
| ANDROID_KEYSTORE_PASSWORD | Keystore 密码 |
| ANDROID_KEY_ALIAS | Key 别名 |
| ANDROID_KEY_PASSWORD | Key 密码 |
详细说明见 .github/ANDROID_RELEASE_SECRETS.md。
欢迎提 Issue 与 PR!提交前请先阅读 CONTRIBUTING.md,了解 Issue / PR / Commit 规范。
感谢每一位为本项目付出时间与代码的伙伴 ❤️
图片由 contrib.rocks 自动生成,随 GitHub 贡献图谱更新。
本项目基于 SPlayer 移植,向原作者 @imsyy 与所有贡献者致以最诚挚的感谢 ❤️
AGPL-3.0 —— 与上游保持一致
| Back | FazBrowse Home | New Git URL |