Android上的Ionic Cordova相机插件错误

时间:2016-08-10 16:30:38

标签: android cordova ionic-framework camera cordova-plugins

Cordova版本是:6.3.0

Cordova Android版本是:5.0.0

相机插件版本:cordova-plugin-camera 2.2.0“相机”

我的代码适用于Android 5.0和Android 6.0的多个设备,但它不支持Android 4.4,Android 4,3等。

在Android 4.4和4.3中,相机插件会触发相机和库,但它不会进入.then(函数(ImageData){..}它会进入错误功能。

    $scope.gallery = function() {
var options = {
        quality : 80,
        destinationType : Camera.DestinationType.DATA_URL,
        sourceType : Camera.PictureSourceType.PHOTOLIBRARY,
        allowEdit : false,
        encodingType: Camera.EncodingType.JPEG,
        popoverOptions: CameraPopoverOptions,
        targetWidth: 500,
        targetHeight: 500,
        saveToPhotoAlbum: true,
        correctOrientation: true
    };
     $cordovaCamera.getPicture(options).then(function(imageData) {
          console.log('image'); 
          imaged = imageData;

          $scope.statusMessagePhoto = "photo saved ✓";
     }, function(error) {
            console.log(error.message);
       alert(error.message);
     });
};
$scope.savephoto = function(){
    var options = {
        quality : 80,
        destinationType : Camera.DestinationType.DATA_URL,
        sourceType : Camera.PictureSourceType.CAMERA,
        allowEdit : false,
        encodingType: Camera.EncodingType.JPEG,
        popoverOptions: CameraPopoverOptions,
        targetWidth: 500,
        targetHeight: 500,
        saveToPhotoAlbum: true,
        correctOrientation: true
    };
     $cordovaCamera.getPicture(options).then(function(imageData) {

          imaged = imageData;

          $scope.statusMessagePhoto = "photo saved ✓";
     } , function(error) {
            console.log(error.message);
       alert(error.message);
     });
};

当我按下savephoto按钮相机打开,但在控制台(日志)中,我得到错误“未定义”和警报,甚至在保存或选择我想要的照片之前。

在Android 4.3或4.4上有任何人遇到过相同的错误。我重复这段代码在Android 5.0及更高版本上运行完美。

1 个答案:

答案 0 :(得分:2)

<强>解决!

从config.xml中删除此行

  <preference name="AndroidLaunchMode" value="singleInstance"/>