Как в Android 16 приложение может программно переключать STREAM_MUSIC в MODE_NORMAL на устройство TYPE_BUILDIN_SPEAKER?Android

Форум для тех, кто программирует под Android
Anonymous
Как в Android 16 приложение может программно переключать STREAM_MUSIC в MODE_NORMAL на устройство TYPE_BUILDIN_SPEAKER?

Сообщение Anonymous »

Как приложение в Android 16 может программно глобально переключать STREAM_MUSIC в MODE_NORMAL на устройство TYPE_BUILDIN_SPEAKER?
API-интерфейсы SetSpeakerPhoneOn() и setAudioRoute() либо устарели, либо больше не работают. SetCommunicationDevice() предназначен для вызовов, а не для обычного звука. Приложение, создающее звук, может использовать AudioAttributes, но это не глобальный переключатель. Из-за частых изменений в AudioManager большинство приложений для маршрутизации звука не работают.
Причина, по которой это требуется, проста — подключите USB-гарнитуру или просто микрофон, и вывод звука на динамик отключится. Это возможно за пределами панели «Вывод мультимедиа», поскольку приложение Spotify предоставляет параметры «Проводное соединение» и «Этот телефон». Эта настройка влияет на весь телефон, а не только на звук Spotify.
Как ни странно, на Samsung на панели «Вывод мультимедиа» нет опции «Этот телефон», но это может быть проблемой One UI.

Вернуться в «Android»