由于数据存储指南中的一些问题,我的第一个音乐下载应用程序被拒绝了。我试图将我的 mp3 文件保存在 NSDocumentDirectory 中。我需要通过添加标志“不备份”来重新提交我的应用程序。
这是我的代码,
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectoryPath = [[paths objectAtIndex:0]stringByAppendingPathComponent:@"Music.mp3"];
[receivedData writeToFile:documentsDirectoryPath atomically:YES];
[self addSkipBackupAttributeToItemAtURL:downloadURL];
- (BOOL)addSkipBackupAttributeToItemAtURL:(NSURL *)URL1
{
if (&NSURLIsExcludedFromBackupKey == nil) { // iOS <= 5.0.1
const char* filePath = [[URL1 path] fileSystemRepresentation];
const char* attrName = "com.apple.MobileBackup";
u_int8_t attrValue = 1;
int result = setxattr(filePath, attrName, &attrValue, sizeof(attrValue), 0, 0);
return result == 0;
}
else { // iOS >= 5.1
NSError *error = nil;
[URL1 setResourceValue:[NSNumber numberWithBool:YES] forKey:NSURLIsExcludedFromBackupKey error:&error];
return error == nil;
NSLog(@"success");
}
}
此代码适用于我的 5.1 版本吗?有点困惑