tdu*_*and 6 filesystems ios cordova
我在iOS上使用了cordova 3.4和org.apache.cordova.file(最新版本1.3.1).
我想将数据存储在Library/NoCloud目录中,我发现在doc中我们应该在config.xml中设置这些变量:
<preference name="iosPersistentFileLocation" value="Library" />
<preference name="iosExtraFilesystems" value="library-nosync" />
Run Code Online (Sandbox Code Playgroud)
但它不起作用,它给了我一个库/文件中的文件系统根,我无法移动到NoCloud目录,因为我们无法获取根库/文件的父.
有人也在努力解决这个问题吗?您是否成功使用了iosExtraFilesystems var?
我正在尝试升级cordova,但在做这件事时还有其他问题..我会发布进一步的进展.
更新:
不使用cordova 3.5,3.6,我在apache的jira跟踪器上创建了一个问题:https://issues.apache.org/jira/browse/CB-7687
谢谢
蒂博
Ian*_*and 13
最简单的方法(自v1.2.0起)与cordova.file.dataDirectory属性有关.它应该是library-nosync目录的路径.您可以结合使用它resolveLocalFileSystemURL来获取可以在其中创建文件的目录条目对象.
这样的事情应该有效:
resolveLocalFileSystemURL(cordova.file.dataDirectory, function(entry) {
console.log("Success! Got a DirectoryEntry");
// Do more things with `entry` here
}, function(error) {
console.error("Something bad happened, and we didn't get a DirectoryEntry");
});
Run Code Online (Sandbox Code Playgroud)
澄清您在问题中提到的两个设置:
<preference name="iosPersistentFileLocation" value="Library" />
Run Code Online (Sandbox Code Playgroud)
此首选项只是告诉File插件,默认情况下,PERSISTENT文件系统应该将文件存储在设备的Library目录下.如果没有该设置,则默认值是以前Cordova版本(Documents目录)使用的位置.无论如何,库文件系统可供您的应用程序使用(只要您没有使用下一个设置禁用它)
<preference name="iosExtraFilesystems" value="library-nosync" />
Run Code Online (Sandbox Code Playgroud)
该iosExtraFilesystems优先讲述的文件系统的根,除了默认值(临时和永久)安装文件的插件.默认情况下,它设置为字符串
"library,library-nosync,documents,documents-nosync,cache,bundle,root"
Run Code Online (Sandbox Code Playgroud)
这已包含library-nosync,因此您不必添加它.实际上,以实际方式设置它实际上会从应用程序中删除其他文件系统根.
| 归档时间: |
|
| 查看次数: |
8736 次 |
| 最近记录: |