В своем приложении Ionic 2 я использую API WebAudio для записи звука (на основе https://github.com/mattdiamond/Recorderjs ). Это работает в Chrome, и после установки правильных разрешений в AndroidManifest.xml
:
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
и запрос доступа к микрофону через плагин cordova.plugins.diagnostic
на Android версии 6.0.1 (Samsung Galaxy S6).
Однако он не работает на Android 4.2.2 (Samsung Galaxy S4), потому что, похоже, он не поддерживает getUserMedia
, поэтому я решил установить плагин crosswalk:
ionic plugin add cordova-plugin-crosswalk-webview
После этого я вижу, что getUserMedia
можно использовать (через проверку Modernizr). Однако теперь диктофон возвращает только тишину (на обеих версиях Android). Я проверил, что разрешения по-прежнему установлены правильно. Есть идеи, что может быть не так?