我在XCode中使用以下代码,针对启用了ARC的iOS构建。为什么会出现这些错误?

这是我的代码:

KeychainItemWrapper *keychainItem = [[KeychainItemWrapper alloc] initWithIdentifier:@"Test" accessGroup:nil];
[keychainItem setObject:@"Test" forKey:kSecAttrService];

[keychainItem setObject:password.text forKey:kSecValueData];
[keychainItem setObject:username.text forKey:kSecAttrAccount];

最佳答案

之所以会这样,是因为kSecAttrAccount等不是Obj-C类型。只需在每个喜欢之前放置一个(__bridge id)

[keychainItem setObject:password.text forKey:(__bridge id)kSecValueData];

10-06 10:50