【开源推荐】进阶实战,从一款音乐播放器开始
0.前言
前面有同學問我,想要做一個Android 實戰項目,問我有沒有好的開源項目可以參考和練習?
想想自己以前也是,當項目沒有什么新任務的時候,想著自己寫一個實戰項目來來練練手,那拿什么項目來練手呢?我覺得最好的項目就是自己寫一個音樂播放器。一個音樂播放器里幾乎能包含Android 中的大部分常用技術,Android 的四大組件(Activity,Service,BroadcastRecevier,ContentProvider都有使用),自定義View、widgets組件,進程通訊、通知欄、網絡相關、音頻、視頻相關技術等等。因此,如果你做完一個完整音樂播放器,那么對你自己的技術提升也不小。
本篇文章就介紹幾個不錯的開源Android音樂播放器,UI美觀,代碼質量不錯,如果你正打算找一個項目練練手,那么不妨去看看:
1. Timber
Timber 是一款功能強大的開源音樂播放器,有如下功能:
- Material Design 設計
- 歌曲、專輯、歌手 瀏覽
- 創建、編輯播放列表
- 桌面widgets控件
- 主題切換
- 支持Android手表和車載
- 通知和歌詞等等。
功能全面,界面遵循Material Design 設計規范,非常漂亮,里面也有一些炫酷的自定義控件,如果你想找一個開源項目來模仿和練習實戰,這個項目是個不錯的參考。
地址: https://github.com/naman14/Timber
Github star: 4.2k
2. remusic(高仿網易云音樂app)
網易云音樂應該算是國內最好音樂APP之一,我也是網易云音樂的忠實用戶,不僅app界面美觀,整個社區也是做的很好,在音樂推薦方面深的人心,幾乎每一首都符合口味,網上更有流傳了這樣一張圖:
不裝個網易云音樂,連女朋友都找不到(開個玩笑...)。
而remusic是對網易樂音樂app的高仿,界面幾乎一模一樣, 功能很全面,項目中有使用一些優秀的開源框架:
- 圖片加載框架 Fresco
- 網絡框架:Retrofit+okhttp
- 換膚:MagicaSakura
還有一些自定義View ,如歌詞控件、播放進度控件、暫定、播放控件等等。如果你想開發一款音樂播放器來實戰進階,remusic 是一個不錯的參考開源項目。
地址:https://github.com/aa112901/remusic
Github star: 3.9k
3. ListenerMusicPlayer(高仿輕聽app)
輕聽是騰訊出品的一款Android本地音樂播放器,顏值爆表,非常小清新,整體設計運用Material Design風格,配合優雅的場景轉換和漣漪效果、便捷的手勢操作,讓你一見傾心,保證你看到就會喜歡上它。
ListenerMusicPlayer 是高仿的 聽聽app界面和交互,使用 Lastfm Api 與 酷狗歌詞Api。項目架構采用 mvp-clean,基于 Retrofit2 + Dagger2 + Rxjava + RxBus + Glide。
里面也有一些炫酷的動畫效果,是一個值得參考的開源項目。
地址:https://github.com/hefuyicoder/ListenerMusicPlayer
Github star: 1.9k
4. android-UniversalMusicPlayer
android-UniversalMusicPlayer 是 google 的 一個音樂播放器示例App,沒有炫酷庫的UI,重點展示如何使用Android api 來打造一個自己的多媒體播放器。項目中不僅有手機上播放器的示例,更有多種其他平臺,如平板、手表、車載、電視等等。是一個很好的學習多媒體相關api的開源項目。
地址:https://github.com/googlesamples/android-UniversalMusicPlayer
Github star:9k
5.總結
其實寫一個音樂播放器還是挺鍛煉人的,涉及的知識面廣,對于初、中級Android 工程師適合。本篇文章介紹了4個優秀的開源音樂播放器,有興趣的可以去看看研究一下。我相信寫完后對你的幫助會很大的。如果你還有什么優秀的開源庫推薦,歡迎文末留言。
更多Android干貨文章,關注公眾號 【Android技術雜貨鋪】
總結
以上是生活随笔為你收集整理的【开源推荐】进阶实战,从一款音乐播放器开始的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JavaScript-2(数组与字符串的
- 下一篇: 在ASP.NET MVC 模型中 选择最