У меня есть приложение Cordova на Android, им нужен доступ к микрофону, подключенному через USB.
Проблема в том, что при использовании navigator.mediaDevices.enumerateDevices (), я бог идентификаторов, но все метки пусты.
Я установил следующие разрешения для приложения.
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission-group.MICROPHONE" />
Доступ к микрофону в веб-просмотре также разрешен, и я могу получить доступ к внутреннему микрофону устройства и начать останавливать поток.
Для теста я загрузил приложение в Google Chrome на том же устройстве, в Chrome я вижу все метки устройства, как ожидалось.
Есть разрешение, которое я забыл?
UPDATE:
Проблема в том, что требуется, чтобы веб-просмотр имел доступ к списку устройств, но api-разрешения удалены cordova по соображениям безопасности. Когда это разрешение предоставляется самим приложением, веб-просмотр не получает эти разрешения.