Android: определить текущий аудиоканал

Я пытаюсь определить, как звук в данный момент выводится на мой телефон Android.

Я тестировал с:

android.bluetooth.headset.profile.action.AUDIO_STATE_CHANGED

Который предлагает информацию, когда текущее аудиоустройство является головным телефоном с Bluetooth и когда это не так, что является частью решения.

Тем не менее, я не могу запечатлеть, когда звук направляется на динамики по сравнению с ресивером, а не с проводными наушниками.

В идеале должна быть одна широковещательная передача, которую я слушаю, которая запускается всякий раз, когда изменяется звуковой маршрут, например, при переключении между ними во время вызова.

1 ответ

Есть AUDIO_BECOMING_NOISY намерение, которое срабатывает при переключении звука с наушников на колонки (см. http://developer.android.com/guide/topics/media/mediaplayer.html).

И есть также способ обнаружения противоположного переключателя, см. Как определить, когда пользователь подключает гарнитуру к устройству Android? (Напротив ACTION_AUDIO_BECOMING_NOISY)

Другие вопросы по тегам