我试图阻止我的应用程序备份文件到iCloud,但已经变得完全混乱,有点失落。
-编辑-
我已经更新这反映我做了感谢以下海报的变化。
我想,以防止备份被下载到应用程序的文件目录中的文件。
到目前为止,我有一个叫做类PreventBackup
用下面的方法:
+ (BOOL)addSkipBackupAttributeToItemAtURL:(NSURL *)URL
{
NSError *error = nil;
BOOL success = [URL setResourceValue: [NSNumber numberWithBool: YES]
forKey: NSURLIsExcludedFromBackupKey error: &error];
if(!success){
NSLog(@"Error excluding %@ from backup %@", [URL lastPathComponent], error);
}
NSLog(@"prevent backup method called without error");
return success;
}
我然后用这个代码调用它的应用程序启动时:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSURL *pathURL= [NSURL fileURLWithPath:documentsDirectory];
[PreventBackup addSkipBackupAttributeToItemAtURL:pathURL];
该cosole打印prevent backup method called without error
,但应用程序仍表现出具有数据的背面,同样的量了它没有之前。
任何想法,这是怎么回事了?
- 编辑2-
OK,我认为这是解决。 该文件被下载到被称为“下载”子文件夹。 改变上述以便它的内容如下看起来已经做的伎俩的代码:
NSString *downloadsFolder = [documentsDirectory stringByAppendingPathComponent:(@"/downloads")];
NSURL *pathURL= [NSURL fileURLWithPath:downloadsFolder];
[PreventBackup addSkipBackupAttributeToItemAtURL:pathURL];
感谢大家的帮助。