无法使用 cordova 文件访问目录和子目录 API

Could not access directory and subdirectory using cordova File API

我目前正面临文件 API 问题的挑战。我似乎无法访问目录的内容。下面的代码应该访问一个目录及其子目录,然后读取其中的所有文件。

window.requestFileSystem(LocalFileSystem.PERSISTENT, 0,
    function(filesystem) {
        var tmpPath = filesystem.root.toURL() + "Inmark/InmarkCatalog";

        window.resolveLocalFileSystemURL(tmpPath, function(gotDir) {
            var reader = filesystem.root.createReader();
            reader.path = gotDir.toURL();
            reader.readEntries(successCatalog, failCatalogList);

        }, catalogfilefail)
    }, catalogfilefail);

但实际情况是它不会进入目录,而是进入内部存储的根目录。它仍然是 运行 reader.readEntries() 函数,但它传递的是根目录中的文件夹,而不是 Inmark/InmarkCatalog.

中的文件夹

*我最近升级到 cordova 3.5.1 并使用文件系统插件 1.3.3。

使用这个解决了:

window.resolveLocalFileSystemURL(tmpPath, function(gotDir) {

    var reader = gotDir.createReader(); //<-- this is the answer

    reader.readEntries(successCatalog, failCatalogList);
}, catalogfilefail)
  • 我从使用 filesystem.root.createReader() 切换到 gotDir.createReader()
  • 我的原始代码仅适用于 cordova 2.9.0,当我切换到 3.5.1 时,它停止工作,所以我不得不使用这种新方法。