PhoneGap iOS,如何获取应用程序“文档”文件夹的完整路径?

13

996C42CE-B8BF-4F1A-B16C-DBF194BD5A71 是你的应用程序 ID 还是另一个应用程序的 ID? - dhaval
是的,它是设备中的应用程序ID。 - meadlai
1个回答

19

试一下这段代码:

document.addEventListener("deviceready", onDeviceReady, false);

    function onDeviceReady() {
        console.log("device is ready");
        window.requestFileSystem  = window.requestFileSystem || window.webkitRequestFileSystem;
        window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS, fail);
    }

    function fail() {
        console.log("failed to get filesystem");
    }

    function gotFS(fileSystem) {
        console.log("got filesystem");

            // save the file system for later access
        console.log(fileSystem.root.fullPath);
        window.rootFS = fileSystem.root;
    }

    function downloadImage(url, fileName){
        var ft = new FileTransfer();
        ft.download(
            url,
            window.rootFS.fullPath + "/" + fileName,
            function(entry) {
                console.log("download complete: " + entry.fullPath);

            },
            function(error) {
                console.log("download error" + error.code);
            }
        );
    }

这个Gist显示了适用于iOS和Android的实现方式。


4
"/"这个符号是具有误导性的,它不是根目录,实际上它是应用程序的主目录(在iPad上已验证)。 - Ravindranath Akila
2
在iOS上,完整路径是'/',这真的很误导人。我无法下载到这个路径。@RavindranathAkila..你找到任何解决方案了吗..? - shashwat
当然,每个应用程序都是沙盒化的,因此root意味着应用程序的主目录。你认为你可以访问iOS的根文件系统吗? - Tien Do
应该是 fileSystem.root.nativeURL,否则你将无法使用 fullPath 创建文件。 - Enix

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接