2014-08-28 121 views
0

我有以下代码:iOS - 如何永久保存密码?

NSData *secret = [pssword dataUsingEncoding:NSUTF8StringEncoding]; 
    query [email protected]{ 
      (__bridge id)kSecClass:(__bridge id) kSecClassGenericPassword, 
      (__bridge id)kSecAttrService:@"My App", 
      (__bridge id)kSecAttrAccount:usrid, 
      (__bridge id)kSecValueData:secret 
      }; 

    OSStatus status = SecItemAdd((__bridge CFDictionaryRef) query, NULL); 

    if(status != errSecSuccess) 
    { 
     NSLog(@"Unable add item with key =%@ error:%ld",secret,status); 
    } 

这似乎是密码和用户ID,只保存了会议。每次刷新模拟器或重新启动应用程序时,密码和用户ID都会消失/消失。

如何将它们永久保存到钥匙串DB?

谢谢

+0

检查这个答案http://stackoverflow.com/a/6972305/2053537 – tnylee 2014-08-28 19:40:06

+0

谢谢你的帮助。 – georgeOfTheJungle 2014-09-02 09:34:23

回答

1

您可以使用NSUserDefaults的这样做只是
时保存有密码数据使用(例如,如果密码的NSString)

 NSString*[email protected]"myPassordStringXXX"; 
    [[NSUserDefaults standardUserDefaults] setObject:userIDString forKey:@"passwordKey"]; 
    [[NSUserDefaults standardUserDefaults] synchronize]; 

以检索您的数据可以使用

NSString*passwordString=[[NSUserDefaults standardUserDefaults] objectForKey:@"passwordKey"] 
+0

谢谢你的帮助。 – georgeOfTheJungle 2014-09-02 04:39:48

+0

@georgeOfTheJungle它适合你吗? 是你想要的吗? – Adel 2014-09-02 16:00:26

+0

是的。谢谢。我给了我一个很好的起点。 – georgeOfTheJungle 2014-09-02 21:55:29