【问题标题】:Download a file to Downloads folder of device using Cordova FileTransfer使用 Cordova FileTransfer 将文件下载到设备的下载文件夹
【发布时间】:2016-02-05 17:55:00
【问题描述】:

我正在使用 Cordova FileTransfer 对象将文件从 url 下载到设备。

var fileTransfer = new FileTransfer();
var path = cordova.file.dataDirectory;
 fileTransfer.download(
        fileUrl,
        path + "/sample.pdf",
        function(theFile) {
            console.log("download complete: " + theFile.toURI());
            alert("File downloaded to "+cordova.file.dataDirectory);
        },
        function(error) {              
            console.log(JSON.stringify(error));
        }
    );

在这种情况下,文件被下载到data/data/com.fileDemo/files/ (我不确定下载是否成功,因为我无法访问此文件夹。获取成功消息为download complete: file:///data/data/com.fileDemo/files/sample.pdf)。 如何使用相同的方法将文件下载到 android 设备的“Downloads”文件夹?

【问题讨论】:

    标签: android cordova


    【解决方案1】:

    在 Cordova 中,使用 FileTransfer,您可以请求 TEMPORARYPERSISTENT 文件系统

    window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS, fail);
    window.requestFileSystem(LocalFileSystem.TEMPORARY, 0, gotFS, fail);
    
    • iOS
      • PERSISTENT 将返回 Documents 目录,
      • TEMPORARY 将返回 Caches 目录
    • 安卓
      • PERSISTENT 将返回 SD 卡/手机内存的根目录
      • TEMPORARY 将返回数据文件夹内的文件夹。

    请参阅File APIFileTransfer 了解更多信息。

    【讨论】:

    • 我刚试过这个,但 gotFs 指向应用程序的数据文件夹。不是根目录下的下载文件夹。可以访问根目录下的Download文件夹吗?
    • 对于那些仍然坚持这个问题的人,cordova.file.externalRootDirectory + 'Download/'fileSystem.root.toURL() + 'Download/'should 工作
    猜你喜欢
    • 1970-01-01
    • 2018-03-19
    • 1970-01-01
    • 1970-01-01
    • 2017-06-28
    • 1970-01-01
    • 2014-02-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多