Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在cordova中以独立于平台的方式访问数据目录_Javascript_Android_Ios_Cordova - Fatal编程技术网

Javascript 在cordova中以独立于平台的方式访问数据目录

Javascript 在cordova中以独立于平台的方式访问数据目录,javascript,android,ios,cordova,Javascript,Android,Ios,Cordova,我正在开发一个corodva(phonegap)应用程序,并将一些下载的文件保存到数据目录中。当前,如果我以以下方式访问目标文件的文件系统条目: function gotFS(fileSystem) { fileSystem.root.getFile("<filename>", {create: true}, gotFileEntry, fail); } window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotF

我正在开发一个corodva(phonegap)应用程序,并将一些下载的文件保存到数据目录中。当前,如果我以以下方式访问目标文件的文件系统条目:

function gotFS(fileSystem) {
    fileSystem.root.getFile("<filename>", {create: true}, gotFileEntry, fail);
}

window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS, fail);
函数gotFS(文件系统){
getFile(“,{create:true},gotFileEntry,fail);
}
requestFileSystem(LocalFileSystem.PERSISTENT,0,gotFS,fail);
我尝试了
LocalFileSystem.APPLICATION
,但它给出了一个javascript错误

在iOS中,文件保存到
/Documents/
,在android中保存到
/mnt/sdcard/

我想将这些文件存储在Android中的
/data/data/
和iOS中的等效文件中(我猜是
/Application Support/

现在的问题是:


有没有一种方法可以以独立于平台的方式访问这些文件,这样我就不需要添加ifs来检查我是哪个平台?

我写了一篇小博文,介绍如何将依赖于平台的路径移到启动时加载的json文件中。这样,您就不必为您所处的平台进行繁琐的测试


看一看这个问题及其答案,可能会对您有所帮助:@Chips\u 100我已经在访问文件系统了,因为这个例子引出了我要问的问题,我将对它进行编辑以显示这一点though@SimonMacDonld这些都是我想要避免的假设。我在博客文章中没有做任何假设。看看代码,这是一种避免执行if(ios)else if(android)等操作的方法。对不起,我误读了你的博文,我认为你可以将json文件作为某种“platform.js”包含在索引文件中,而不是使用XHR,这是一个很好的解决方案,但我正在寻找一个现成的解决方案,现在我开始认为没有现成的解决方案:)