无法通过getDirectory()函数访问phonegap中的任何目录

时间:2013-06-17 16:02:20

标签: file cordova

这应该很简单,但我无法让它工作

SZENARIO: 我想用phonegap文件AP​​I迭代我的文件夹

问题: 我无法让getDirectory()函数工作

非常简单的例子:(以说明我的问题)

var fileSystem, basePath;

window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, doStuff, function(error) { 
    notificationservice.log('Failed to get local filesystem: ' + error.code); 
});

function doStuff(fs) {
    fileSystem = fs;
    basePath = fileSystem.root.fullPath;

    var directoryEntry = new DirectoryEntry('', basePath);
    readDirectory(directoryEntry);
}

function readDirectory(directoryEntry) {
    var directoryReader = directoryEntry.createReader();
    directoryReader.readEntries(function(entries) {
        for (var i = 0 ; i < entries.length ; i++) {
            notificationservice.log(entries[i].fullPath);

            fileSystem.root.getDirectory(entries[i].fullPath, {create: false}, function(dir) {
                    notificationservice.log('SUCCESS');
                }, function (error) { 
                    notificationservice.log('Failed to get directory'); 
                });

        }
    }); 
}       

我可以使用new DirectoryEntry()访问我的文件夹,但每当我尝试访问具有getDirectory()功能的目录时,我都会失败 - 如果有人可以帮我纠正上述代码,那么{{1} }不会回复错误我会非常感谢!

请注意: 我使用eclipse编辑器进行部署并部署到nexus 7 (如果可能的话,代码应该像iOS一样平台或者赢得胜利)

感谢, 的Matthias

顺便说一下:我确信有很多问题可以解决这个问题 - 但是,我还没有找到任何为我工作的问题......

1 个答案:

答案 0 :(得分:0)

根据https://meta.stackexchange.com/questions/17845/etiquette-for-answering-your-own-question

愚蠢的我 - 迷上了我从网上得到的脚本 - 我必须使用.name属性(来自当前目录的相对路径),如此

fileSystem.root.getDirectory(name, {create: false}, function(dir) {...
- 这个问题已经解决了(对不起,如果有人浪费时间在这上面)