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)