【问题标题】:how to save bool value in KeychainItemWrapper如何在 KeychainItemWrapper 中保存布尔值
【发布时间】:2015-06-04 20:14:08
【问题描述】:

我想在 KeychainItemWrapper 中存储 bool 值,如何存储?

我试过这段代码,但它给了我错误。

 [keychain setObject:YES forKey:(__bridge BOOL)kSecAttrIsInvisible];

【问题讨论】:

  • 你遇到了什么错误?

标签: ios boolean keychainitemwrapper


【解决方案1】:

你也可以像这样使用速记

[keychain setObject:@(YES) forKey:(__bridge BOOL)kSecAttrIsInvisible];

【讨论】:

  • 简写被称为 Literals,不是 Objective-C 2.0 的一个特性,而是 Clang 3.7 并在 LLVM 4.0 中使用
【解决方案2】:

BOOL 是基本类型,setObject:forKey: 仅排除派生自 NSObject 的类。

所以使用NSNumber它有一个特殊的方法+ numberWithBool:

[keychain setObject:[NSNumber numberWithBool:YES] forKey:@"someKey"];

如果你需要再次布尔:

 NSNumber *value = [keychain objectForKey:@"someKey"];
 BOOL boolValue = [value boolValue];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-04-25
    • 2020-06-11
    • 2011-08-01
    • 1970-01-01
    • 2020-02-19
    • 2017-08-22
    • 1970-01-01
    • 2017-04-25
    相关资源
    最近更新 更多