0

問題は、Android 4.3 の Cordova 3.0 で次のコードを使用して、Android でネストされたディレクトリ構造を作成できないことです。(同じコードは iOS でも動作します)

var createDirectories = function(directoryArray, currentDir) {
    var parent = currentDir;
    var create = function(dirs) {
        if (dirs.length > 0) {
            console.log('Creating dir: ' + parent.fullPath + '/' + dirs[0]);
            parent.getDirectory(dirs[0], {create: true, exclusive: false}, function(newDir){
                console.log('Directory created: ' + newDir.fullPath);
                parent = newDir;
                dirs.splice(0, 1);
                create(dirs);
            }, function(err) {
                console.log('Error creating directory. ' + err.code);
                console.log(err);
                if (FileError.PATH_EXISTS_ERR === err.code) {
                    console.log('Directory already exists.');
                }
            });
        } else {
            console.log('done');
        }
    };
    create(directoryArray);
};

何を試しても、呼び出しは PATH_EXISTS_ERR で失敗します。['images','test'] を渡すと、'images' が作成されますが、'test' で失敗します。誰もが前にこの問題に遭遇しましたか?

iOS では、期待どおりに 2 つの「ディレクトリが作成されました: ...」という出力が得られます。

4

1 に答える 1