如何知道NSURLIsExcludedFromBackupKey是否有效?

时间:2014-06-16 22:53:14

标签: ios nsurl

由于以下原因,我最近拒绝了我的应用

  

2.23:应用必须遵循iOS数据存储指南,否则将被拒绝

原因是我的应用程序从Web下载了大量图像文件并将它们写入文档目录。因此,我会采取以下措施来尝试纠正这种情况:

    NSURL *url = [NSURL URLWithString:stickerURL];
    NSError *error = nil;
    BOOL success = [url setResourceValue:[NSNumber numberWithBool:YES] forKey:NSURLIsExcludedFromBackupKey error:&error];

    if(!success)
    {
        NSLog(@"Error excluding %@ from backup %@", [url lastPathComponent], error);
    }

    NSData *data = [NSData dataWithContentsOfURL:url];

我的问题是,我怎么知道NSURLIsExcludedFromBackupKey是否有效? BOOL success始终以YES的形式返回。但是,当我检查设置 - > iCloud - >存储&备份 - >管理存储 - > MyiPhone5,它在我的应用程序下面显示的大小没有任何区别。这是否意味着它不起作用?如果没有,我可以在代码中修复什么?

1 个答案:

答案 0 :(得分:2)

如果您正在检查设备设置中的“管理存储空间”,并且在添加了一堆文件(例如,照片,文档或其他任何标记为无法备份的文件)之后,您会注意到备份你的应用程序的大小正在增加,那么标志不是“正常”(虽然情况应该不是这样,真的)。

测试它的一种方法是删除密钥NSURLIsExcludedFromBackupKey,下载一堆数据,然后检查备份大小是否增加。然后,一旦将密钥添加回代码中,并再次下载一堆数据,备份存储大小就不会明显增加。