我一直在使用 PhoneGap 2.9.0 (with build) 从网站下载文件以存储在我的 android 设备上的 sdcard 上。
我正在寻找一种解决方案来下载多个文件并检查所有这些请求是否已成功完成。
有人告诉我,使用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);
}