如何使用Phonegap将文件下载到Android的下载文件夹?
我已经使用Phonegap的File API成功下载了一个文件到我的Android手机。 我想将该文件下载到手机上的Downloads文件夹中。 例如,如果您从电子邮件下载附件,附件将转至您的下载文件夹。 这是我的JS代码,它将文件下载到“file:// mnt / sdcard /”:
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function(fileSystem) {
fileSystem.root.getFile('myfile.jpg', {
create: true,
exclusive: false
}, function(fileEntry) {
var localPath = fileEntry.fullPath,
fileTransfer = new FileTransfer();
fileTransfer.download(uri, localPath, function(entry) {
console.log("download complete: " + entry.fullPath);
}, function (error) {
console.log('download error: ' + error.code);
console.log("download error source " + error.source);
console.log("download error target " + error.target);
});
}, downloadError);
}, downloadError);
必须有一种方法可以访问Downloads文件夹,因为我在其他应用程序中都会看到这个功能。
您可以通过在getFile方法中指定文件将文件发送到下载文件夹...
getfile('download/myfile.jpg' ...)
这不会触发DownloadManager,它在文件下载完成时会通知您。 我仍然在努力寻找通过phonegap访问DownloadManager类的解决方案。 我在这里问过这个问题如何使用Phonegap将文件下载到Android的Downloads文件夹?
我有同样的问题,但我解决了这个问题:
//if IOS cordova.file.documentsDirectory
window.resolveLocalFileSystemURL(cordova.file.externalDataDirectory, function (fileEntry) {
var filepath = fileEntry.toURL() + filename;
var fileTransfer = new FileTransfer();
console.log('FilePath ' + filepath);
fileTransfer.download(uri, filepath,
function (fileEntry) {
console.log("download complete: " + fileEntry.toURL());
},
function (error) {
console.log("ErrorDownload: " + JSON.stringify(error));
},
true,
{}
);
});
我创建了一个插件,使用下载管理器下载文件,并显示进度条
https://github.com/vasani-arpit/cordova-plugin-downloadmanager
//after device is ready
var fail = function (message) {
alert(message)
}
var success = function (data) {
console.log("succes");
}
cordova.plugins.DownloadManager.download("Your URL to download", success, fail);
我希望它有帮助。
链接地址: http://www.djcxy.com/p/63983.html上一篇: How do you download a file to Android's Downloads folder using Phonegap?
下一篇: pointers to a class in dynamically allocated boost multi