重生!入门级开源音乐播放器APP —— 波尼音乐

18,202 阅读3分钟

前言

不知道是否还有人记得,7年前的那个 「Android开源在线音乐播放器——波尼音乐」?

本来只是作为毕设项目,没想到很多人感兴趣,就断断续续的在维护,当时在网络上找到了一个百度开放的在线音乐 API,勉强实现了本地 + 网络播放能力。

可惜没过多久 API 就被百度关闭了,从此以后便黯然失色,一度沦落为本地播放器,在这个万物互联时代显得有点落寞,我也因此没有太多更新的动力。

最近无意间发现开源社区已经有大神发布了「网易云音乐 API」,喜出望外,遂有了重整旗鼓的想法,顺便对之前的架构做一次重构,来一次脱胎换骨的升级!

经过3个多月断断续续的开发,今天,它来了!

展示

视频

截图

screenshot.jpg

桌面小组件

功能

后续可能会根据大家的反馈增加或调整功能

本地功能

  • 基于 Media3 + ExoPlayer 构建播放能力
  • 添加和播放本地音乐文件
  • 专辑封面显示
  • 歌词显示,支持拖动歌词调节播放进度
  • 通知栏控制
  • 桌面小组件
  • 夜间模式
  • 定时关闭

在线功能

  • 登录网易云(验证码+扫码)
  • 同步网易云歌单
  • 每日推荐
  • 歌单广场
  • 排行榜
  • 搜索歌曲和歌单
  • 添加歌曲到歌单
  • 喜欢歌曲
  • 下载歌曲
  • 管理歌单
  • 设置在线播放/下载音质

体验

欢迎大家体验,如果发现功能问题或兼容性问题,可以在本文评论或者 GitHub Issue

环境要求

  • Android 手机(系统版本为 Android 6.0 及以上)
  • 电脑(非必须)

安装步骤

  1. 搭建网易云服务器
    由于我们使用的是非官方 API,因此需要自行搭建 API 服务器。
    打开服务端项目 NeteaseCloudMusicApi (或 NeteaseCloudMusicApiBackup) 主页,根据项目说明安装并运行服务,需要确认电脑和手机处于同一局域网
  2. 安装 APP
    点击下载最新安装包
  3. 设置域名
    打开 APP,点击左上角汉堡按钮,打开抽屉,点击「域名设置」,输入步骤1中的地址(包含端口)
  4. 设置完成即可体验

没有电脑,如何体验?

使用电脑的目的是为了部署后端 API 服务,其实我们的 Android 手机也可以作为服务器!

  1. 安装 Termux
    这是 Android 平台下的一个开源的终端模拟器,GitHub 下载地址
  2. 安装 nodejs
    启动 Termux,执行 pkg install nodejs 命令安装 nodejs
    完成后可通过 node -v 确认是否安装成功
  3. 运行网易云服务器
    Termux 中执行 npx NeteaseCloudMusicApi@latest 命令安装并运行网易云服务器
    看到控制台打印 server running @ http://localhost:3000 即表示运行成功
  4. 设置域名
    打开波尼音乐APP,输入域名 http://localhost:3000/ 并重启即可

源码

ponymusic: An Android online music player like NetEase Cloud Music, based on Media3 and ExoPlayer

欢迎感兴趣的朋友 Star、Fork、PR,有你们的支持,我会非常开心😄

依赖

站在巨人的肩膀上

在线服务

开源技术