2017-07-04 7 views
0

コードバカメラプラグインを使用して、アップロードされたファイルのタイプとサイズを取得します。それはそれは常に失敗し、決して成功コールバック関数に入るwindow.resolveLocalFileSystemURLののfuctionに来るとき、私は次のコードコードバカメラプラグインを使用してアップロードしたファイルのファイルサイズとファイルタイプを取得する方法

var source=''; 
if(sourceSelection==0){ 
    source=Camera.PictureSourceType.PHOTOLIBRARY; 
} 
else if(sourceSelection==1){ 
    source=Camera.PictureSourceType.CAMERA; 
} 
navigator.camera.getPicture(
     function onSuccess(imageData) { 
     window.resolveLocalFileSystemURL(imageData, function success(fileEntry) { 

      // Do something with the FileEntry object, like write to it, upload it, etc. 
      // writeFile(fileEntry, imgUri); 
      console.log("got file: " + fileEntry.fullPath); 
      // displayFileData(fileEntry.nativeURL, "Native URL"); 

     }, function (err) { 
      console.log(err); 
      // If don't get the FileEntry (which may happen when testing 
      // on some emulators), copy to a new FileEntry. 
      // createNewFileEntry(imgUri); 
     }); 
     $timeout(function() { 
      service.imageUrl = "data:image/jpg;base64," + imageData; 
      service.imageUploaded = true; 
      resolve({ 
      imgUrl:service.imageUrl 
      }); 
     }, 0); 

     }, function onFail(message) { 
     reject(false); 
     }, 
     { 
     quality: 50, 
     destinationType: Camera.DestinationType.DATA_URL, 
     // encodingType: Camera.EncodingType.JPEG, 
     sourceType: source, 
     allowEdit: true, 
     correctOrientation:true, 
     targetHeight:100, 
     targetWidth:200 
    }); 

を使用しています。しかし。私は、エラーをチェックする場合には、

"A URI supplied to the API was malformed, or the resulting Data URL has exceeded the URL length limitations for Data URLs." 

を言う助けてください!!!!

答えて

0

getPictureから返されるものは、ファイルではなくbase64でエンコードされた文字列です。 次のように保存できます。

this.myCamera.getPicture(this.myCameraOptions).then((imageData) => { 

    // store in gallery 
    this.myBase64.base64ToGallery(imageData, { prefix: '_img' }) 
    .then((data) => { 
     // success 
    }, (dataErr) => { 
     // error 
    }); 
    }, (dataErr) => { 
     // error 
    }); 
関連する問題