PhoneGap 2.9.0 (ビルド付き) を使用して、Web サイトからファイルをダウンロードし、Android デバイスの SD カードに保存しています。
複数のファイルをダウンロードし、これらの要求がすべて正常に完了したことを確認するソリューションを探しています。
これはjQuery.Defferedを使用することで可能であると言われましたが、これをコードでまだ使用しておらず、理解するのに苦労しています。
既存のコードは理論的には正常に動作しますが、アレイ内の最後のダウンロードが正常にダウンロードされたときにのみチェックしますが、最後のダウンロードが他のダウンロードよりも先に正常に返されることがあります。
私のコードは以下のようなものです:
var ft = new FileTransfer();
var online = [
'http://google.com/img/1.jpg',
'http://google.com/img/2.jpg',
'http://google.com/img/3.jpg'
];
var sdcard = 'file:///storage/sdcard0/';
$.each( online, function(k,v) {
ft.download(
online[k],
sdcard,
win,
fail
);
}
var win = function(success, counter){
// check if counter is last element in array
// redirect user to page if last element
}
var fail = function(error){
console.log(error);
}