私はアンドロイドが初めてで、音楽プレーヤーを作成しています。私は MediaSession に慣れていませんでしたが、今では機能する Music Player を持っていますが、ヘッドフォンのクリックへの反応や着信通話の一時停止をサポートしていません。
これは私のコードです:
ComponentName mediaButtonReceiver = new ComponentName(context, MusicPlayerNotificationReceiver.class);
final MediaSessionCompat mediaSession = new MediaSessionCompat(context, "Start MP", mediaButtonReceiver, null);
mediaSession.setFlags(MediaSessionCompat.FLAG_HANDLES_MEDIA_BUTTONS | MediaSessionCompat.FLAG_HANDLES_TRANSPORT_CONTROLS);
LockerActivity.getInstance().runOnUiThread(new Runnable() {
@Override
public void run() {
mediaSession.setCallback(MusicPlayer.this);
}
});
mediaSession.setActive(true);
BroadcastReceiver
このアクションで定義された もあります
<action android:name="android.intent.action.MEDIA_BUTTON" />
これは、に関連付けられた私のコードのすべてですMediaSession
。ですから、今のところ、ヘッドフォンからアクションの通知を受け取るようにしています。内部の最初の行にブレークポイントがありonReceive()
、ヘッドフォンのボタンをクリックしても何も起こりません。ボタンを長押しすると、Android がリスニング モードになり、音声指示が表示されます。
他に何が必要ですか?