我正在尝试防止我的应用程序将文件备份到iCloud,但已经完全混乱并有点迷失。
-编辑-
我已经更新了这篇文章,以反映我根据下面的帖子所做的更改。
我想防止备份下载到应用程序文档目录的文件。
到目前为止,我有一个名为PreventBackup的类,其中包含以下方法:
当应用程序启动时,我使用以下代码调用它:
控制台打印出“prevent backup method called without error”,但是应用程序仍然显示备份数据的数量与之前相同。您有任何想法这里出了什么问题吗?
-编辑2-
好的,我认为问题已经解决了。文件正在下载到名为“downloads”的子文件夹中。更改上面的代码,使其读取如下内容似乎已经解决了问题:
感谢大家的帮助。
-编辑-
我已经更新了这篇文章,以反映我根据下面的帖子所做的更改。
我想防止备份下载到应用程序文档目录的文件。
到目前为止,我有一个名为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];
控制台打印出“prevent backup method called without error”,但是应用程序仍然显示备份数据的数量与之前相同。您有任何想法这里出了什么问题吗?
-编辑2-
好的,我认为问题已经解决了。文件正在下载到名为“downloads”的子文件夹中。更改上面的代码,使其读取如下内容似乎已经解决了问题:
NSString *downloadsFolder = [documentsDirectory stringByAppendingPathComponent:(@"/downloads")];
NSURL *pathURL= [NSURL fileURLWithPath:downloadsFolder];
[PreventBackup addSkipBackupAttributeToItemAtURL:pathURL];
感谢大家的帮助。