メディアプレーヤーを使用してオーディオを再生するアプリケーションを作成しましたが、youtubeのような他のアプリケーションがビデオを再生してもプレーヤーは停止しません。外部プレーヤー(YouTubeなど)が再生されている場合、メディアプレーヤーを停止する方法
他のアプリが音声を再生し始めると、音声を止める方法。
私はmediaPlayer.start()を使用しました。オーディオを再生する。
ご協力いただければ幸いです。
メディアプレーヤーを使用してオーディオを再生するアプリケーションを作成しましたが、youtubeのような他のアプリケーションがビデオを再生してもプレーヤーは停止しません。外部プレーヤー(YouTubeなど)が再生されている場合、メディアプレーヤーを停止する方法
他のアプリが音声を再生し始めると、音声を止める方法。
私はmediaPlayer.start()を使用しました。オーディオを再生する。
ご協力いただければ幸いです。
オーディオのフォーカス変更を聞く必要があります。 参照:https://developer.android.com/reference/android/media/AudioManager.OnAudioFocusChangeListener.html
OnAudioFocusChangeListenerコールバックは、オーディオフォーカスステータスを示すフラグで呼び出され、メディアプレーヤーを停止するために使用できます。
AudioFocusChangeListenerを設定して、オーディオフォーカスの変更を待機することができます。
private AudioManager.OnAudioFocusChangeListener mOnAudioFocusChangeListener;
audioFocusChangeListener =new AudioManager.OnAudioFocusChangeListener()
{
@Override
public void onAudioFocusChange (int focusChange){
switch (focusChange) {
case AudioManager.AUDIOFOCUS_GAIN:
// Set volume level to desired levels
play();
break;
case AudioManager.AUDIOFOCUS_GAIN_TRANSIENT:
// You have audio focus for a short time
play();
break;
case AudioManager.AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK:
// Play over existing audio
play();
break;
case AudioManager.AUDIOFOCUS_LOSS:
stop();
break;
case AudioManager.AUDIOFOCUS_LOSS_TRANSIENT:
// Temporary loss of audio focus expect to get it back you can keep your resources around
pause();
break;
case AudioManager.AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK:
// Lower the volume
break;
}
}
}
;