1
允許與媒體控制器,音量鍵,媒體按鈕和傳輸控件進行交互。Android MediaSession按鈕
MediaSession文檔聲明它可以與媒體按鈕和傳輸控件一起使用。它只包含設備上的物理按鈕,還是可以實現觸發MediaSession回調的UI按鈕?
允許與媒體控制器,音量鍵,媒體按鈕和傳輸控件進行交互。Android MediaSession按鈕
MediaSession文檔聲明它可以與媒體按鈕和傳輸控件一起使用。它只包含設備上的物理按鈕,還是可以實現觸發MediaSession回調的UI按鈕?
確實如此。
首先,你需要一個監聽媒體鍵事件服務,所以聲明它從你表現出像這樣
<service android:name="com.example.android.MediaPlaybackService" >
<intent-filter>
<action android:name="android.intent.action.MEDIA_BUTTON" />
</intent-filter>
</service>
在該服務中,你應該初始化MediaSessionCompat
對象,並通過你用它收到一起意圖在MediaButtonReceiver
像這樣
private MediaSessionCompat mMediaSessionCompat = ...;
public int onStartCommand(Intent intent, int flags, int startId) {
MediaButtonReceiver.handleIntent(mMediaSessionCompat, intent);
return super.onStartCommand(intent, flags, startId);
}
您也可能想要創建的MediaSessionCompat.Callback
一個實例,並設置它
setCallback()
在這裏,您將實際控制正在播放 您還可以通過自己的UI使用的MediaControllerCompat
一個實例使用它的方法getTransportControls()
調用這些交通控制媒體
這裏更多 MediaButtonReceiver