2014-08-28 161 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