Phonegap Javascript Не спрашивайте разрешения микрофона - PullRequest
0 голосов
/ 21 сентября 2018

Я использую микрофон с WebSocket для отправки аудио, но мое приложение на iOS не запрашивает разрешение микрофона, поэтому оно не может отправлять аудио

JavaScript

function initAudio() {

var permissions = cordova.plugins.permissions;
permissions.hasPermission(permissions.RECORD_AUDIO, function( status ){
    if ( status.hasPermission ) {

        navigator.mediaDevices.getUserMedia({'audio': true}).then(function(mediaStream) {
            gotStream(mediaStream);
        });

    }
    else {
      console.log("no");
    }
  });}

Xml

    <plugin name="cordova-plugin-media" source="npm" spec="~2.4.1" />
    <plugin name="cordova-plugin-media-capture" source="npm" spec="~1.4.1" />
    <plugin name="cordova-plugin-android-permissions" source="npm"/>

<plugin name="cordova-plugin-inappbrowser" />
<plugin name="phonegap-plugin-media-recorder" />
<gap:plugin name="cordova-plugin-whitelist" source="npm" />
<preference name="phonegap-version" value="cli-7.1.0" />
<allow-intent href="http://*/*" launch-external="yes" />
<allow-intent href="https://*/*" launch-external="yes" />
<edit-config file="*-Info.plist" mode="overwrite" target="NSCameraUsageDescription">
    <string>We are using the Camera for scan qr codes</string>
</edit-config>
<edit-config file="*-Info.plist" mode="overwrite" target="NSMicrophoneUsageDescription">
    <string>We are using the mic for a streaming to a server of audio recognition</string>
</edit-config>

что я могу сделать?

1 Ответ

0 голосов
/ 15 марта 2019

Проблема заключалась в аудиоконтексе на сафари, поэтому он не запрашивал разрешения

...