0

我正在将我的用户电子邮件 ID、密码和身份验证令牌保存在钥匙串中。有时,仅密码文本会丢失一个字符,但其他人不会。我无法弄清楚是什么导致了这个问题。最初我把这些保存在NSUserDefaults 和同样的事情发生了。我认为转移到钥匙串可以解决这个问题。但它没有。我浪费了几天时间试图解决这个问题。任何帮助将不胜感激。

这就是我保存的方式:

[keychainItem setObject:userEmailId forKey:(__bridge id)kSecAttrAccount];
[keychainItem setObject:userPassword forKey:(__bridge id)kSecValueData];

并找回密码。

NSData *password =[keychainItem objectForKey:(__bridge id)(kSecValueData)];
userPassword = [[NSString alloc] initWithData:password encoding:NSUTF8StringEncoding];
NSLog(@"Password from keychain = %@ and textfield = %@",userPassword,txtPassword.text);
userEmailId = [keychainItem objectForKey:(__bridge id)kSecAttrAccount];

userPassword 或 txtPassword.text 永远不会在其他任何地方被访问或更改。

4

0 回答 0