好的。我在视图控制器中设置用户密码:
KeychainItemWrapper *keychainWrapper =
[[KeychainItemWrapper alloc] initWithIdentifier:
[[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleIdentifier"] accessGroup:nil];
[keychainWrapper setObject:@"theUser" forKey:(__bridge id)(kSecAttrAccount)];
[keychainWrapper setObject:_passcode forKey:(__bridge id)(kSecValueData)];
NSLog(@"Saved pass: %@",_passcode);
NSLog(@"Returned pass: %@",[keychainWrapper objectForKey:(__bridge id)(kSecValueData)]);
NSlogs 返回我设置的相同字符串,假设它是 1234。稍后在 AppDelegate 中我尝试检索密码:
KeychainItemWrapper *keychainWrapper =
[[KeychainItemWrapper alloc] initWithIdentifier:
[[[NSBundle mainBundle]infoDictionary] objectForKey:@"CFBundleIdentifier"] accessGroup:nil];
passcodeViewController.passcode = [keychainWrapper objectForKey:(__bridge id)(kSecValueData)];
NSLog(@"Pass: %@",[keychainWrapper setObject:_passcode forKey:(__bridge id)(kSecValueData)]);
然后邪恶就来了。NSLog 返回:31323334。我做错了什么?