gpt4 book ai didi

ios - 使用 SSKeychain 存储在钥匙串(keychain)中的用户名是否总是出现在第 4 个索引中?

转载 作者:行者123 更新时间:2023-12-01 17:41:00 26 4
gpt4 key购买 nike

我正在使用 SSKeychain 将我的凭据存储在 iphone 中。但是当我尝试使用以下代码检索它时

NSArray *accountsArr = [SSKeychain accountsForService:@"User"];
if(accountsArr)
{
NSDictionary *credentialsDict =accountsArr[0];
NSArray *userNames = [credentialsDict allKeys];
NSString *credential = (NSString *)credentialsDict[userNames[3]];
self.usernameTxtFld.text = credential;
credential = [SSKeychain passwordForService:@"User" account:self.usernameTxtFld.text];
self.passwordTxTFld.text = credential.length>0?credential:nil;
}

我需要为存储的用户名指定 userNames[3] 这总是出现在索引 3 中还是应该为此使用其他方法?

最佳答案

不,因为字典键没有固有的顺序。 NSDictionary documentation在其对 allKeys 的讨论中明确说明了这一点。方法:

The order of the elements in the array is not defined.



拥有字典的意义在于您可以通过特定的键查找某些内容。在这种情况下,您应该使用 kSSKeychainAccountKey 获取帐户名称。 SSKeychain.h中定义的常量,如图:
NSArray *accountsArray = [SSKeychain accountsForService:@"User"];
if ([accountsArray count] > 0) {
NSDictionary *credentialsDictionary = accountsArray[0];
NSString *accountName = credentialsDictionary[kSSKeychainAccountKey];
NSString *password = [SSKeychain passwordForService:@"User" account:accountName];
self.passwordTextField.text = password;
}

关于ios - 使用 SSKeychain 存储在钥匙串(keychain)中的用户名是否总是出现在第 4 个索引中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19781797/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com