Cordova Kamera-Plugin-Berechtigung in Android 6.0 verweigern

Ich verwende ionic, um eine mobile Anwendung zu entwickeln. Die Anwendung erfordert eine Kamera. Ich habe meinem Projekt das Cordova-Kamera-Plugin hinzugefügt. Außerdem verwende ich den ngCordova-Wrapper. Die Anwendung hat gut funktioniert. Letzten Tag habe ich ein Gerät mit Android Version 6.0 (Marshmallow) verwendet, um meine App zu testen. Wenn ich auf die Schaltfläche klicke, wird der Fehler direkt ausgelöst. Ich habe ein USB-Debugging durchgeführt und den Fehler erhalten, dass

Camera Error  "Permission Denial: starting Intent { act=android.media.action.IMAGE_CAPTURE flg=0x3 cmp=com.google.android.GoogleCamera/com.android.camera.CaptureActivity clip={text/uri-list U:file:///storage/emulated/0/Android/data/com.app.cameratest/cache/.Pic.jpg} (has extras) } from ProcessRecord{6fe7446 18933:com.app.cameratest/u0a471} (pid=18933, uid=10471) with revoked permission android.permission.CAMERA"

Ich habe es gegoogelt und festgestellt, dass in Android 6.0 die Berechtigungen standardmäßig deaktiviert sind. Wenn Sie versuchen, auf die Kamera zuzugreifen, werden Sie um Erlaubnis gebeten. Ich habe keine Erlaubnis bekommen, ein Dialogfeld für die Kamera zu suchen. Aber ich habe die Erlaubnis-Eingabeaufforderung für das Standort-Plugin und das Datei-Plugin erhalten.

Meine Cordova Version ist 6.0 Kamera-Plugin Version 2.1.0 Cordova android API 23

Ich habe versucht, ein Downgrade der Cordova Android-Version auf 5.0 durchzuführen, um die Zielversion auf Android 22 zu ändern.

Hier ist mein Code

var options = {
            quality: 75,
            destinationType: Camera.DestinationType.FILE_URI,
            sourceType: 1,
            allowEdit: false,
            encodingType: 0,
            targetWidth: 380,
            targetHeight: 450,
            popoverOptions: CameraPopoverOptions,
            direction: 1,
            saveToPhotoAlbum: true
        };
 $cordovaCamera.getPicture(options).then(function(imageData) {
   console.log('image data': imageData);
},function(error) {
    console.error('Camera Error ', JSON.stringify(error));
 });

Ich habe versucht, das Plugin auf 2.1.1 zu aktualisieren. funktioniert immer noch nicht. Wenn jemand eine Lösung dafür hat, teilen Sie uns diese bitte mit. Ich weiß nicht, warum dieses Plugin nicht nach einer Erlaubnis fragt.

Die Kamera funktioniert, wenn wir die Erlaubnis der Kamera im Einstellungsmenü manuell aktivieren. Ich möchte den Benutzerfluss in meiner Anwendung dafür nicht unterbrechen.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage