0

在先前版本的 cordova/phonegap 中,由 fullPath 和 toURL() 返回的文件或目录上的 URL(在 Android 中)“file:///mnt/sdcard”。

window.requestFileSystem(
    LocalFileSystem.PERSISTENT,
    0,
    function(fs){
        console.log(fs.root.fullPath);
        console.log(fs.root.toURL());
    },
    function(error){
        console.error('Failed to get file system:' + error);
    }
);

使用cordova 3.3.1-0.4.2 的上述代码返回:

02-20 15:56:56.746 I/Web Console(27239): / at file:///android_asset/www/js/ui.js:64
02-20 15:56:56.746 I/Web Console(27239): cdvfile://localhost/persistent/ at file:///android_asset/www/js/ui.js:65

这对于使用基于 cordova 的功能来说很好,但是如果我想将 URL 传递给第三方库,那么 URL 是没有意义的。(我的例子是我有一个本地存储的 GPX 文件,我需要将位置传递给 openlayers 层)

4

2 回答 2

2

新的 cdvfile 协议在 android 2 中不起作用,因此 toNativeURL() 方法已添加到 org.apache.cordova.file 插件的 1.0.1 中,请参阅https://issues.apache.org/jira/浏览/CB-6106

于 2014-04-08T11:11:01.877 回答
0

实际上与cordova的版本无关,而是与插件的版本相关联。你看过新版本插件的发行说明吗?

(我必须承认目前对我来说也不是很清楚)

Raymond Camden 写了一篇关于这个主题的博客文章,也许你可以在那里提问?

于 2014-02-20T23:22:53.017 回答