我想在KeychainItemWrapper中存储bool值,如何存储?
我试过这段代码,但它给了我错误。
[keychain setObject:YES forKey:(__bridge BOOL)kSecAttrIsInvisible];
答案 0 :(得分:6)
BOOL
是基本类型,而setObject:forKey:
仅排除派生自NSObject
的类。
所以使用NSNumber
它有一个特殊的方法+ numberWithBool:
:
[keychain setObject:[NSNumber numberWithBool:YES] forKey:@"someKey"];
如果你需要再次布尔:
NSNumber *value = [keychain objectForKey:@"someKey"];
BOOL boolValue = [value boolValue];
答案 1 :(得分:0)
您也可以像
一样使用速记[keychain setObject:@(YES) forKey:(__bridge BOOL)kSecAttrIsInvisible];