【发布时间】:2018-11-26 20:15:33
【问题描述】:
如果用户已启用该功能,我如何以编程方式防止将 Documents 目录中的文件备份到 iCloud?我假设有两种途径:从 iOS 设备备份和从 Mac 上的 iTunes 备份备份。我看到人们建议使用 setxaddr 来防止备份到 Mac,但是如何防止 iOS 自动将文件内容发送到 iCloud?
【问题讨论】:
标签: ios icloud itunes file-attributes
如果用户已启用该功能,我如何以编程方式防止将 Documents 目录中的文件备份到 iCloud?我假设有两种途径:从 iOS 设备备份和从 Mac 上的 iTunes 备份备份。我看到人们建议使用 setxaddr 来防止备份到 Mac,但是如何防止 iOS 自动将文件内容发送到 iCloud?
【问题讨论】:
标签: ios icloud itunes file-attributes
例子:
var myFileURL = // file URL
var rv = URLResourceValues()
rv.isExcludedFromBackup = true
try? myFileURL.setResourceValues(rv)
【讨论】:
https://developer.apple.com/library/archive/qa/qa1719/_index.html
检查这些链接。希望它能指导您解决手头的问题。
在 iOS 5.1 及更高版本中,将支持文件存储在 /Library/Application Support 目录中,并使用 setResourceValue:forKey:error: 方法将 NSURLIsExcludedFromBackupKey 属性添加到相应的 NSURL 对象。 (如果您使用 Core Foundation,请使用 CFURLSetResourcePropertyForKey 函数将 kCFURLIsExcludedFromBackupKey 键添加到您的 CFURLRef 对象。)应用此属性可防止将文件备份到 iTunes 或 iCloud。如果您有大量的支持文件,您可以将它们存储在自定义子目录中,并将扩展属性应用于该目录。
【讨论】: