我的应用因其上传到iCloud的内容大小而被拒绝.我的应用程序的Documents文件夹中唯一的文件是default.realm数据库文件.我认为这是iCloud上传的文件.如何阻止iCloud将数据库上传到iCloud?
谢谢.
根据iOS App Programming Guide的App Backup Best Practices部分,<Application_Data>/Library/Caches
或者<Application_Data>/tmp
不会备份到iCloud.通常,您可以使用<Application_Data>/Library/Caches
目录来保存您不会备份到iCloud的数据.
要更改Realm的文件路径,可以path
在创建Realm实例时传递参数,如下所示:
let realmPath = NSSearchPathForDirectoriesInDomains(.CachesDirectory, .UserDomainMask, true)[0] as! String
let realm = Realm(path: realmPath.stringByAppendingPathComponent("data.realm"))
Run Code Online (Sandbox Code Playgroud)
否则,您可以使用NSURLIsExcludedFromBackupKey
文件系统属性从备份中排除文件和目录(请参阅技术问答QA1719).如果要使用默认路径,则唯一的方法是从备份中排除Realm文件.
let realm = Realm()
if let realmPathURL = NSURL(fileURLWithPath: realm.path) {
realmPathURL.setResourceValue(NSNumber(bool: true), forKey: NSURLIsExcludedFromBackupKey, error: nil)
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2159 次 |
最近记录: |