iPhone钥匙链

iPhone钥匙链,iphone,api,keychain,Iphone,Api,Keychain,我无法让KeychainItemWrapper(苹果示例)正常工作。我已经将KeychainItemWrapper文件添加到我的项目中,当在手机上运行它时,SecItemAdd引发异常,表示一个或多个参数无效(结果代码-50)。触发SecItemAdd的代码如下所示: KeychainItemWrapper* wrapper = [[KeychainItemWrapper alloc] initWithIdentifier:@"something" accessGroup:nil]; [wrap

我无法让KeychainItemWrapper(苹果示例)正常工作。我已经将KeychainItemWrapper文件添加到我的项目中,当在手机上运行它时,SecItemAdd引发异常,表示一个或多个参数无效(结果代码-50)。触发SecItemAdd的代码如下所示:

KeychainItemWrapper* wrapper = [[KeychainItemWrapper alloc] initWithIdentifier:@"something" accessGroup:nil];
[wrapper setObject:@"this is my password" forKey:@"password"];
NSLog(@"Password: %@", [wrapper objectForKey:@"password"]);
怎么了


代码可以在

中找到,我遇到了同样的问题。不能在字典中放入任意键,需要使用SecItemAdd能够理解的定义良好的键

试试这个:

KeychainItemWrapper *wrapper = [[KeychainItemWrapper alloc] initWithIdentifier:@"password" accessGroup:nil];
[wrapper setObject:@"this is my password" forKey:(id)kSecValueData];
NSLog(@"password: [%@]", [wrapper objectForKey:(id)kSecValueData]);
[wrapper release];

第13个问题-你现在会接受吗?你也应该把这个问题分成几个问题。SO系统无法在一个线程中跟踪多个问题的多个答案。您希望人们回答4个独立的理论问题,并调试您的代码。这至少是5个独立的答案,(1)大多数人没有时间或知识来回答全部5个问题,(2)没有人会因为只回答其中一个问题而获得声誉。并不是说你似乎接受了答案。