2

iOS の Phonegap/Cordova アプリが、カメラで撮影したすべての写真を保存し、サーバーにアップロードしていることを発見しました。

「使用」タップの下のiPhone設定に私のアプリがあり、アプリを終了した後でも必要なディスクサイズが増えています。

では、サーバーにアップロードされた後、これらの一時ファイルまたは画像自体を削除するにはどうすればよいでしょうか? 私はpictureURIを使用して、アップロードする場所を特定します。

編集:ありがとう。コードを実装したところ、次のようになりました。

私のファイルアップロード機能では、次の行を追加しました:

window.resolveLocalFileSystemURI(fileURI, onResolveSuccess, faillocal);

他の関数は次のようになります。

function onResolveSuccess(fileEntry) {
  console.log(fileEntry.name);
  entry.remove(entrysuccess, failresolve);
}

function entrysuccess(entry) {
  console.log("Removal succeeded");
}

function failresolve(error) {
  alert('Error removing directory: ' + error.code);
}

function faillocal(evt) {
  console.log(evt.target.error.code);
}

しかし、うまくいきません。ファイルはアップロードされますが、アラートもコンソールへの書き込みも削除もまったくありません...

4

2 に答える 2

7

写真の URI を取得してwindow.resolveLocalFileSystemURIに渡すと、このメソッドの成功コールバックで、 removeメソッドを呼び出すことができるFileEntryオブジェクトを取得できます。

于 2012-06-25T18:58:05.983 に答える
3

このクリーンアップ方法が導入された PhoneGap / Cordova のどのバージョンかはわかりませんが、必要なことはかなり少ないコードで実行できるようです: http://docs.phonegap.com/en/2.2.0/cordova_camera_camera. cleanup.md.html#camera.cleanup

于 2012-11-15T05:16:52.977 に答える