推薦一個音樂播放器封裝庫的演示項目:iMusic音樂播放器
- 若你對視頻播放器有需求請移步至Android視頻播放器封裝
前段時間公司項目中新增ASMR音頻模塊醉旦,包含的主要功能有:音頻上傳、付費購買镣典、播放、懸浮窗播放等雹嗦。開發(fā)時考慮到后期維護和功能擴展栈源,特將播放器封裝成庫。在此整理此文章姆泻,希望能幫助到正準備開發(fā)音樂播放相關的童鞋。
項目效果圖:
播放器界面
播放器鬧鐘設置
播放器列表
如圖所示冒嫡,主要有音樂播放拇勃、鬧鐘設置、唱片機動畫和交互孝凌、彈窗動態(tài)模糊方咆、懸浮窗播放(效果圖沒貼出來)等功能實現(xiàn)。根據(jù)效果圖和產(chǎn)品的需求蟀架,所有功能已經(jīng)開發(fā)完成并上線瓣赂。在維護代碼的閑暇之余,我在此庫的基礎上做了功能擴展片拍,現(xiàn)在已經(jīng)將庫獨立出來合并到開源項目iMusic中煌集。
閱讀前可以先前往下載安裝體驗,iMusic基本預覽動態(tài)展示:
體驗完整功能請前往iMusic下載體驗
在這里就敖述視頻上傳捌省、購買等與播放器庫無關的業(yè)務邏輯了牙勘,直接關心核心的音樂播放功能封裝。一款完整的音樂播放器APP應該是包括但不限于:后臺播放所禀、鎖屏播放、本地和網(wǎng)絡音頻播放放钦、通知欄播放交互色徘、鎖屏播放交互、音頻輸出焦點管理操禀、線控播放交互褂策、歌詞顯示等功能。這個項目因為歌詞來源原因暫未開發(fā)歌詞顯示,耳機線控功能也沒有計劃開發(fā)斤寂。接下來咱們來看看框架的結(jié)構(gòu)圖耿焊,結(jié)合結(jié)構(gòu)圖+源碼來理解播放器框架搭建的實現(xiàn)。
音樂播放器代理模式框架結(jié)構(gòu)圖
具體功能實現(xiàn)請前往iMusic閱讀wiki及源碼