私はモバイルアプリケーションを開発するためにionicを使用しています。アプリケーションにはカメラが必要です。私は自分のプロジェクトにCordovaカメラプラグインを追加しました。また、ngCordovaラッパーを使用しています。アプリケーションは正常に動作していました。昨日、アンドロイドバージョン6.0(Marshmallow)のデバイスを使ってアプリをテストしました。ボタンをクリックすると、エラーが直接トリガーされます。私は、私はそれをGoogleで検索し、アンドロイド6.0で、アクセス権がデフォルトとするときカメラにアクセスしようとする時は、それが許可を求めますでは無効になっていることが見出さCordovaのカメラプラグインの許可がAndroidで拒否されました6.0
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"
というエラーが発生しました、USBデバッグを行って。私はカメラのためのダイアログボックスを求める許可を得ていませんでした。しかし、私は場所のプラグインとファイルのプラグインのための許可のプロンプトを得た。
マイコルドバ版はここ
22は私のコードである6.0 カメラプラグインバージョン2.1.0 コルドバアンドロイドAPI私は、Androidターゲットのバージョンを変更するための5.0にコルドバのAndroidのバージョンをダウングレードしようとした23
です
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));
});
プラグインを2.1.1にアップデートしようとしました。まだ動かない。いずれかの解決策がある場合は、共有してください。なぜこのプラグインが許可のプロンプトを求めないのか分かりません。
カメラ設定メニューの許可を手動で有効にすると、カメラが動作しています。私はそれのために私のアプリケーションでユーザーフローを中断したくない。
を持っていなかった - https://issues.apache.org/jira/browse/CB-10120 – Gandhi
@Gandhiを:私が持っていますすでに投稿を見た。彼らはセキュリティの問題として報告しています。しかし、この問題を処理するためのプラグインは更新されていません。私はプラグインのためのコードを書くためにJavaでうまくいかない。この問題を処理するために、提案する分岐プラグインがありますか。 ? –
申し訳ありません私は自分の経験を手に持っていないので、私はフォークプラグインについてはわかりません。一度この記事を見てください - http://stackoverflow.com/questions/34784460/cordova-plugin-camera-permission-denial-reading-com-android-providers-media-me – Gandhi