- 重生!入门级开源音乐播放器APP —— 波尼音乐
- Android开源在线音乐播放器——波尼音乐
- Android开源音乐播放器之播放器基本功能
- Android开源音乐播放器之高仿云音乐黑胶唱片
- Android开源音乐播放器之自动滚动歌词
- Android开源音乐播放器之在线音乐列表自动加载更多
后续可能会根据大家的反馈增加或调整功能
- 基于 Media3 + ExoPlayer 构建播放能力
- 添加和播放本地音乐文件
- 专辑封面显示
- 歌词显示,支持拖动歌词调节播放进度
- 通知栏控制
- 夜间模式
- 定时关闭
- 登录网易云(验证码+扫码)
- 同步网易云歌单
- 每日推荐
- 歌单广场
- 排行榜
- 搜索歌曲和歌单
- 添加歌曲到歌单
- 喜欢歌曲
- 下载歌曲
- 管理歌单
- 设置在线播放/下载音质
欢迎大家体验,如果发现功能问题或兼容性问题,可以提 GitHub Issue
- Android 手机(系统版本为 Android 5.0 及以上)
- 电脑(非必须)
- 搭建网易云服务器
由于我们使用的是非官方 API,因此需要自行搭建 API 服务器。
打开服务端项目 NeteaseCloudMusicApi (或 NeteaseCloudMusicApiBackup) 主页,根据项目说明安装并运行服务,需要确认电脑和手机处于同一局域网 - 安装 APP
点击下载最新安装包 - 设置域名
打开 APP,点击左上角汉堡按钮,打开抽屉,点击「域名设置」,输入步骤1中的地址(包含端口) - 设置完成即可体验
使用电脑的目的是为了部署后端 API 服务,其实我们的 Android 手机也可以作为服务器!
- 安装
Termux
这是 Android 平台下的一个开源的终端模拟器,GitHub 下载地址 - 安装
nodejs
启动Termux
,执行pkg install nodejs
命令安装nodejs
完成后可通过node -v
确认是否安装成功 - 运行网易云服务器
在Termux
中执行npx NeteaseCloudMusicApi@latest
命令安装并运行网易云服务器
看到控制台打印server running @ http://localhost:3000
即表示运行成功 - 设置域名
打开波尼音乐APP,输入域名http://localhost:3000/
并重启即可
2.3.0
- 播放器内核升级为 Media3 + ExoPlayer
- 修复歌单内歌曲超过1000首加载失败的问题
2.2.0
- 增加添加歌曲到歌单
- 播放页增加喜欢歌曲和下载歌曲
- 设置页增加设置下载音质
- 支持删除歌单中的歌曲
- 优化大屏播放页效果
2.1.0
- 增加手机验证码登录(需要使用最新版本服务端代码)
- 支持设置在线播放音质
- 增加 Banner 实现
- 增加接口缓存,非首次打开加载更快
- 适配 Android 14
- 修复部分设备后台启动 Service 崩溃
2.0.0
- 使用 Kotlin 重写
- 接口改为网易云音乐
- 增加「每日推荐」、「歌单广场」、「排行榜」、「搜索」等在线功能
- 适配到 Android 13
1.3.0
- 新增歌词支持上下拖动
- 新增支持分屏模式
- 新增本地歌曲支持按大小和时长过滤
- 新增下载的歌曲文件自动添加专辑封面
- 新增编辑歌曲信息
- 新增5.0以上系统支持联动系统媒体中心,锁屏显示播放信息
- 修复已知bug
1.2.3
- 新增通知栏播放控制
- 修复魅族手机扫描不到音乐的问题
- 修复已知bug
1.2.0
- 修复在线音乐无法加载的问题
- 修复弱网时播放网络歌曲导致ANR的问题
- 修复每日启动图片无法更新的问题
- 下载在线歌曲可以显示专辑封面了
- 修复已知bug
1.1.0
- 支持 Android 6.0 运行时权限
- 修复已知bug
1.0.0
- First Release
- 桌面小部件 with Glance
- 适配 Android 14
- 在线音乐可以免下载加入我的音乐列表
- 在线音乐自动缓存
- 编辑音乐信息
站在巨人的肩膀上
- 播放器:Media3 + ExoPlayer
- 页面: MVVM
- 网络: Retrofit
- 数据库: Room
- 依赖注入: Hilt
- 图片: Glide
- 统计&崩溃收集: Firebase
- 路由框架: wangchenyan/crouter: 支持组件化的 Android 路由框架
- 歌词控件: wangchenyan/lrcview: Android beautiful draggable lyric view library
- 通用库: wangchenyan/android-common: 个人使用的 Android 通用库
- RecyclerView Adapter: wangchenyan/radapter3: A multitype adapter for Android recyclerview
掘金: https://juejin.im/user/2313028193754168
微博: https://weibo.com/wangchenyan1993
Copyright 2024 wangchenyan
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.