【发布时间】:2014-10-10 06:10:01
【问题描述】:
我想将一些数据文件存储在一个相当永久的位置,该位置应该不与 iCloud 同步。
按照 Cordova 文档,cordova.file.cacheDirectory 是我的最佳选择:
cordova.file.cacheDirectory- 缓存数据文件或您的应用可以轻松重新创建的任何文件的目录。当设备存储空间不足时,操作系统可能会删除这些文件,但是,应用程序不应依赖操作系统来删除此处的文件
为了控制是否达到我的目标,我检查了 iCloud 同步的数据大小:
- 安装并启动您的应用
- 转到设置 > iCloud > 存储和备份 > 管理存储
- 如有必要,点按“显示所有应用”检查应用的存储空间
嗯,我的应用总是那么重...
这是我到目前为止所做的:
- Xcode 中的云授权已关闭
-
config.xml
<preference name="BackupWebStorage" value="none" /> <preference name="iosPersistentFileLocation" value="Library" /> -
Javascript
function onDeviceReady(){ window.requestFileSystem = window.requestFileSystem || window.webkitRequestFileSystem ; window.requestFileSYstem(LocalFileSystem.PERSISTENT, 0, gotFS, function(){ console.log('Error FS'); }); } function gotFS(fileSystem){ window.cacheFS = fileSystem.cacheDirectory; } document.addEventListener('deviceReady', onDeviceReady, false);然后,我使用
cacheFS.toURL()作为基本目录来存储文件。
你能看到我错过了什么吗?
Apple 表示不应同步的数据应具有“不备份”属性,NSURL 对象的NSURLIsExcludedFromBackupKey 属性,CFURLRef 对象的kCFURLIsExcludedFromBackupKey 属性。我不知道那些对象是什么,以及如何使用 Cordova 应用属性...
【问题讨论】:
标签: ios cordova storage icloud