EDIT:コメントごと私は最も効果的な方法でこのレスポンスを更新しています。一言で言えば
次の2つの方法でこれを達成することができます
- チェックをHDMIが切断された場合、オーディオチャンネルがうるさいとなった場合
- チェックを(主に携帯電話上で動作し、テレビのために読み続けます)。 「あなたは、あなたのアプリがあなたが登録できるためACTION_AUDIO_BECOMING_NOISYの意図を、処理することにより、このような状況での音楽の再生を停止確保することができます
:Androidのドキュメント(https://developer.android.com/guide/topics/media/mediaplayer.html#noisyintent)あたりとしては、次の(変化)のような何かを行うことができますマニフェストに以下を追加することにより、受信機:。
<receiver android:name=".MusicIntentReceiver">
<intent-filter>
<action android:name="android.media.AUDIO_BECOMING_NOISY" />
</intent-filter>
</receiver>
これは、その意図のための放送受信機としてMusicIntentReceiverクラスを登録します。次に、このクラスを実装する必要があります。
public class MusicIntentReceiver extends android.content.BroadcastReceiver {
@Override
public void onReceive(Context ctx, Intent intent) {
if (intent.getAction().equals(
android.media.AudioManager.ACTION_AUDIO_BECOMING_NOISY)) {
// signal your service to stop playback
// (via an Intent, for instance)
}
}
}
両方の方法をテストした後、Amazon Developersフォーラムでいくつかの掘り下げを行ったところ、あなたはAUDIO_BECOMING_NOISYの解決策であるようです。 HDMIのものは、ケーブルが実際に接続されているかどうかだけを検出します。これは、電話には良いがTVアプリケーションには悪いです。常に接続されているからです。 – jskrwyk