0.前言
前面有同学问我,想要做一个Android 实战项目,问我有没有好的开源项目可以参考和练习?
想想自己以前也是,当项目没有什么新任务的时候,想着自己写一个实战项目来来练练手,那拿什么项目来练手呢?我觉得最好的项目就是自己写一个音乐播放器。一个音乐播放器里几乎能包含Android 中的大部分常用技术,Android 的四大组件(Activity,Service,BroadcastRecevier,ContentProvider都有使用),自定义View、widgets组件,进程通讯、通知栏、网络相关、音频、视频相关技术等等。因此,如果你做完一个完整音乐播放器,那么对你自己的技术提升也不小。
本篇文章就介绍几个不错的开源Android音乐播放器,UI美观,代码质量不错,如果你正打算找一个项目练练手,那么不妨去看看:
1. Timber
image.pngTimber 是一款功能强大的开源音乐播放器,有如下功能:
- Material Design 设计
- 歌曲、专辑、歌手 浏览
- 创建、编辑播放列表
- 桌面widgets控件
- 主题切换
- 支持Android手表和车载
- 通知和歌词等等。
功能全面,界面遵循Material Design 设计规范,非常漂亮,里面也有一些炫酷的自定义控件,如果你想找一个开源项目来模仿和练习实战,这个项目是个不错的参考。
地址:https://github.com/naman14/Timber
Github star: 4.2k
2. remusic(高仿网易云音乐app)
image.png网易云音乐应该算是国内最好音乐APP之一,我也是网易云音乐的忠实用户,不仅app界面美观,整个社区也是做的很好,在音乐推荐方面深的人心,几乎每一首都符合口味,网上更有流传了这样一张图:
image.png不装个网易云音乐,连女朋友都找不到(开个玩笑...)。
而remusic是对网易乐音乐app的高仿,界面几乎一模一样, 功能很全面,项目中有使用一些优秀的开源框架:
- 图片加载框架 Fresco
- 网络框架:Retrofit+okhttp
- 换肤:MagicaSakura
还有一些自定义View ,如歌词控件、播放进度控件、暂定、播放控件等等。如果你想开发一款音乐播放器来实战进阶,remusic 是一个不错的参考开源项目。
地址:https://github.com/aa112901/remusic
Github star: 3.9k
3. ListenerMusicPlayer(高仿轻听app)
image.png轻听是腾讯出品的一款Android本地音乐播放器,颜值爆表,非常小清新,整体设计运用Material Design风格,配合优雅的场景转换和涟漪效果、便捷的手势操作,让你一见倾心,保证你看到就会喜欢上它。
image.pngListenerMusicPlayer 是高仿的 听听app界面和交互,使用 Lastfm Api 与 酷狗歌词Api。项目架构采用 mvp-clean,基于 Retrofit2 + Dagger2 + Rxjava + RxBus + Glide。
里面也有一些炫酷的动画效果,是一个值得参考的开源项目。
地址:https://github.com/hefuyicoder/ListenerMusicPlayer
Github star: 1.9k
4. android-UniversalMusicPlayer
image.pngandroid-UniversalMusicPlayer 是 google 的 一个音乐播放器示例App,没有炫酷库的UI,重点展示如何使用Android api 来打造一个自己的多媒体播放器。项目中不仅有手机上播放器的示例,更有多种其他平台,如平板、手表、车载、电视等等。是一个很好的学习多媒体相关api的开源项目。
地址:https://github.com/googlesamples/android-UniversalMusicPlayer
Github star:9k
5.总结
其实写一个音乐播放器还是挺锻炼人的,涉及的知识面广,对于初、中级Android 工程师适合。本篇文章介绍了4个优秀的开源音乐播放器,有兴趣的可以去看看研究一下。我相信写完后对你的帮助会很大的。如果你还有什么优秀的开源库推荐,欢迎文末留言。
网友评论