Совместное использование аудиовхода (микрофона) в нескольких приложениях в Android

Согласно официальной документации

Android 10 (уровень API 29) и выше применяет схему приоритетов, которая может переключать входной аудиопоток между приложениями во время их работы. В большинстве случаев, если новое приложение получает аудиовход, ранее записанное приложение продолжает работать, но получает тишину. В некоторых случаях система может продолжать доставлять звук в оба приложения. Ниже описаны различные сценарии совместного использования.

За исключением некоторых особых случаев, звук не используется совместно Программы.

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

Точно так же Omlet arcade может записывать звук с микрофона даже когда доступ к микрофону предоставляется другим приложениям.

Как это возможно? И согласно документации, этого нельзя допускать.

Обновление: удалось достичь этого с помощью гобоя. Но не на всех устройствах. Это также вызывает проблему с синхронизацией в моем приложении для прямой трансляции. Звук слышен с задержкой


person yashodhan divakaran    schedule 25.08.2020    source источник


Ответы (1)


Это невозможно в Android 5+. Для выполнения этого действия вам понадобится рутированный телефон. В Omlet Arcade Каждый раз, когда вы играете в игру и включаете внутриигровой микрофон, Omlet Arcade прекращает прием любого аудиовхода. Тем не менее, Omlet Arcade по-прежнему будет работать, но вам придется перезапустить его, чтобы вернуть голосовой ввод. Хотя из-за недавней ошибки MIUI люди могли прослушивать звонки в Zoom и внутриигровых микрофонных приложениях. В вашем случае это может быть не официальный Android, а отредактированный Android, такой как MIUI и OxygenOS.

person Community    schedule 16.09.2020
comment
Но Omlet, похоже, работает на устройстве Pixel, так что, возможно, это ошибка Android или для ее достижения существует специальная конфигурация. - person yashodhan divakaran; 17.09.2020
comment
То, что я вам только что сказал, абсолютно то же самое. Pixel использует Chrome OS с основным Android, что может достичь того, о чем вы сказали. Я фактически рутировал свой MIUI 11 вручную, загрузившись в загрузчик, а Android 6+ очень сложно взломать с помощью таких приложений, как Kingroot - person ; 18.09.2020
comment
Жалко, что пользователь ушел ... Тем не менее, для всех, кто может знать, вам нужен рутированный телефон для выполнения этого действия. - как и я. Что мне теперь делать? У меня также есть приложение как системное приложение. Если это способ, я не не знаю, как заставить его работать ... - person DADi590; 07.05.2021