cordova 如何在内部存储器上创建文件夹?

vyu0f0g1  于 2023-02-05  发布在  其他
关注(0)|答案(1)|浏览(192)

我正在寻找一种方法,在Cordova for Android中的内部存储器上创建一个目录(而不是www目录),这样我就有了一个类似的路径:

  • /mnt/sdcard/myfolder/
  • /sdcard/myfolder/
  • /storage/emulated/0/myfolder/

(这些路径在物理上相同)
我发现一些脚本在www目录下工作,但是我如何在内部存储器上创建一个文件夹呢?
先谢了!

vatpfxk5

vatpfxk51#

此示例代码允许您在Android的外部根目录中创建文件夹,在iOS中创建文档文件夹:

function writeFile() {
        if (sessionStorage.platform.toLowerCase() == "android") {
            window.resolveLocalFileSystemURL(cordova.file.externalRootDirectory, onFileSystemSuccess, onError);
        } else {
            window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onFileSystemSuccess, onError);
        }
}    

function onError(e) {
    alert("onError");
};

function onFileSystemSuccess(fileSystem) {
    var entry = "";
    if (sessionStorage.platform.toLowerCase() == "android") {
        entry = fileSystem;
    } else {
        entry = fileSystem.root;
    }
    entry.getDirectory("Folder_Name", {
        create: true,
        exclusive: false
    }, onGetDirectorySuccess, onGetDirectoryFail);
};

function onGetDirectorySuccess(dir) {
    dir.getFile(filename, {
        create: true,
        exclusive: false
    }, gotFileEntry, errorHandler);
};

function gotFileEntry(fileEntry) {
    // logic to write file in respective directory
};

function errorHandler(e) {
    // handle error
}

相关问题