gpt4 book ai didi

ios - 支持 iOS 5.1 NSURLIsExcludedFromBackupKey [不备份] 没有安装 Lion?

转载 作者:行者123 更新时间:2023-11-28 17:32:40 25 4
gpt4 key购买 nike

我看到这显然是可能的 submit apps without Lion installed , 但我的应用程序下载了一些大文件,需要根据 Apple storage guidelines 保存这些文件.

包括下面的代码,由于 Use of undeclared identifier 'NSURLIsExcludedFromBackupKey',我什至无法编译:

-(BOOL)addSkipBackupAttributeToItemAtURL:(NSURL *)URL{
if (SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"5.1")) {
assert([[NSFileManager defaultManager] fileExistsAtPath: [URL path]]);

NSError *error = nil;
BOOL success = [URL setResourceValue: [NSNumber numberWithBool: YES]
forKey: NSURLIsExcludedFromBackupKey error: &error];
if(!success){
NSLog(@"Error excluding %@ from backup %@", [URL lastPathComponent], error);
}
return success;
}
}

当我在 xcode 中只有 iOS 5.0 SDK 时,如何继续使用此代码?

(或者我的愿望没有实际意义,因为我真的无法告诉我的应用程序它支持 iOS 5.1?)

最佳答案

如果 ios 版本不是 5.1,我添加了该字符串常量的定义。

这是我的实现方式:

+ (BOOL)addSkipBackupAttributeToItemAtURL:(NSString*) path
{
if (SYSTEM_VERSION_LESS_THAN_OR_EQUAL_TO(@"5.01"))
{
const char* folderPath = [_privateDirectoryPath fileSystemRepresentation];
u_int8_t attrValue = 1;
int result = setxattr(folderPath, kMobileBackupAttrName, &attrValue, sizeof(attrValue), 0, 0);
return result == 0;
}
else
{
#ifndef __IPHONE_5_1
#define NSURLIsExcludedFromBackupKey @"NSURLIsExcludedFromBackupKey"
#endif
NSError *error = nil;
NSURL* url = [NSURL fileURLWithPath:path];
ASSERT_CLASS(url, NSURL);
BOOL success = [url setResourceValue: [NSNumber numberWithBool: YES]
forKey: NSURLIsExcludedFromBackupKey
error: &error];
//Assert success
return success;
}
}

关于ios - 支持 iOS 5.1 NSURLIsExcludedFromBackupKey [不备份] 没有安装 Lion?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10774079/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com