本文為小米應(yīng)用商店的音樂控件APP接入操作指南,您可通過閱讀本內(nèi)容,自行操作音樂控件APP接入。
一、功能概述
MIUI提供了強(qiáng)大的系統(tǒng)音樂控件來優(yōu)化用戶體驗,系統(tǒng)通過通知欄、桌面小控件、鎖屏等方式來展示正在播放的歌曲信息,同時以更為便捷的方式來控制音樂播放器。
第三方音樂播放器可以通過本文所述的接口將正在播放的歌曲信息顯示在系統(tǒng)控件上,并接收系統(tǒng)的控制請求(上一首歌、下一首歌,播放、暫停)。
二、使用方法說明
1、采用Android原生RemoteControlClient
Android自帶了向系統(tǒng)控件設(shè)置歌曲名、歌手名、專輯名等信息的功能,在此基礎(chǔ)上MIUI添加了設(shè)置歌詞的功能,在與Android原有功能兼容的基礎(chǔ)上進(jìn)行擴(kuò)展。
2、app如何接收到控件發(fā)出的命令
1)、注冊接收系統(tǒng)控制請求的BoardCastReceiver與RemoteControlClient
注冊Receiver與RemoteControlClient
摘自官方文檔:https://developer.android.com/reference/android/media/RemoteControlClient.html
注意:在退出app時需要及時注銷receiver與RemoteControlClient
myAudioManager.unregisterRemoteControlClient(myRemoteControlClient);
myAudioManager.unregisterMediaButtonEventReceiver(myEventReceiver);
2)、聲明支持系統(tǒng)控件的操作
3)、注冊listener監(jiān)聽系統(tǒng)發(fā)出的進(jìn)度更新請求
4)、注冊listener監(jiān)聽系統(tǒng)發(fā)出的用戶評分信息
摘自官方文檔:https://developer.android.com/about/versions/android-4.4.html#Ratings
3、app如何將信息顯示到控件
1)、靜態(tài)歌曲信息
發(fā)送的信息常用的有:歌曲名、專輯名、歌手名,播放時常,在播放列表中的歌曲序號,播放列表中的總歌曲數(shù),歌曲封面。
注意:發(fā)現(xiàn)這套傳輸信息的機(jī)制有一個bug,在切歌的時候,需要將MetadataEditor中曾經(jīng)put過值的key(歌曲封面除外),重新put一遍,如果沒有新值可以傳入null,不然上一首歌的信息與新歌的信息會混在一起。
2)、歌曲動態(tài)信息
向系統(tǒng)發(fā)送播放狀態(tài)
可以順帶傳入播放進(jìn)度的信息
向系統(tǒng)發(fā)送播放進(jìn)度,讓系統(tǒng)能夠?qū)崟r監(jiān)聽到app的播放進(jìn)度
注冊listener監(jiān)聽系統(tǒng)發(fā)出的進(jìn)度更新請求
相關(guān)資料摘自官方文檔:https://developer.android.com/reference/android/media/RemoteControlClient.html
以上為音樂控件APP接入操作指南。