2016-04-19 5 views
0

これは私の関数であるcordovaカメラプラグインを使用してフォトライブラリからイメージを選択する機能です。PhotolibraryからFilesystemへのイメージのコピー - エラー1000

$('#select').click(function() { 
     navigator.camera.getPicture(onSuccess, onFail, { quality: 50, 
                 destinationType: Camera.DestinationType.FILE_URL, 
                 sourceType: Camera.PictureSourceType.PHOTOLIBRARY }); 
     function onSuccess(imageURI) { 

      window.resolveLocalFileSystemURL(imageURI, function(entry) { 
       debugger; 
       fs.root.getDirectory('InsectFinder', {}, function(dirEntry) { 
        debugger; 
        dirEntry.getDirectory('FundmeldungPictures', {}, function(dirDirEntry) { 
         debugger; 
         var newFileName = fundmeldungInsectId + "_" + (images.length+1) + ".jpg";       
         entry.copyTo(dirDirEntry, newFileName, function(newEntry) { 
          debugger; 
          var img = {name: newFileName, id: images.length+1}; 
          images = images.concat(img); 
          bilderDataSource.data(images); 
          console.log("yay"); 
         }, errorHandler); 
        }, errorHandler); 
       }, errorHandler); 
      }, errorHandler); 
     } 
     function onFail(message) { 
      console.error('Failed because: ' + message); 
     } 
    }); 

問題は、私がcopyTo関数に到達したとき、私は携帯電話のカメラで画像を撮影するとき、私は同じコードを持って、それが正常に動作し、コード1000 でエラーを取得し、です。

編集: これは私がファイルシステムを要求する機能です。グローバル変数としてfsを宣言したので、このファイルシステムに別々の時間にアクセスすることができます。

window.requestFileSystem(window.PERSISTENT, 100*1024*1024, function(filesystem) { 
       console.log("opened file system: " + filesystem.name); 
       fs = filesystem; 

      }, errorHandler); 

編集:私はのcopyTo機能をデバッグするとき、私はそれがこのラインで失敗 思う:

var messages = nativeApiProvider.get().exec(bridgeSecret, service, action, callbackId, argsJson); 

メッセージは、私は、次のエラー処理では、この関数の後

を定義されていません次のプロセスを取得メッセージ:

"S01 File1981269537 {"isFile":false,"isDirectory":true,"name":"FundmeldungPictures","fullPath":"\/InsectFinder\/FundmeldungPictures","filesystemName":"persistent","filesystem":1,"nativeURL":"file:\/\/\/storage\/emulated\/0\/InsectFinder\/FundmeldungPictures\/"}" 
+0

権限の問題が考えられます。 Anrdoid MarshMallowでテストしていますか? – Gandhi

+0

@Gandhiはい、私はAndroid 6.0.1を持っています – adryr

+0

最新のバージョンのカメラプラグインを使用していることを確認してください.Marshmallowに関連するすべての許可の問題があり、もっと重要なのは最近リリースされたcordovaファイルプラグイン(4.2.0)の最新版を使用します。 – Gandhi

答えて

0

私はこのプロを解決しましたイメージのDATA_URLを返し、それをファイルシステムの新しいファイルに書き込むことで問題を解決できます。

関連する問題