保存密码和 ID 以供离线使用应用程序的最佳方法是什么 xcode objective c

What is best way to save password and id for offline use of the app xcode objective c

我正在使用与 Facebook 一样需要登录的应用程序。即使他们打开应用程序,我也想使用该密码和 ID offline.Even 如果从后台删除应用程序,用户可以进入之前加载的另一个视图控制器。现在我正在获取登录页面每次离线都是我的初始视图控制器。

将您的 ID 和密码存储在 NSUserDefaults 中。并且您的登录页面已设置为初始 ViewController ,因此每次应用程序 killed.So 后都会加载它,因为您可以采用一个 NSUserDefaults 并将 YES 设置为该值,如下所示

[[NSUserDefaults standardUserDefaults]setBool:TRUE forKey:@"isLoggedIn"];

写上面的代码,登录成功后

现在在 AppDelegate 的 DidFinishLaunchingWithOptions 方法中检查以下条件。

if([[NSUserDefaults standardUserDefaults]boolForKey:@"isLoggedIn"] == true){
    // open your desired view controller
}
else{
   // open Login View Controller
}

最好的方法是将密码保存在钥匙串中。 This tutorial is a very good start. 您可以从教程中的 link 下载包装器。 然后您可以将密码保存在钥匙串中,如下所示:

#import "KeychainWrapper.h"

// Save the password in the device keychain
KeychainWrapper *keychainWrapper = [[KeychainWrapper alloc] init];
[keychainWrapper mySetObject:encryptedpwd forKey:(__bridge id)kSecValueData];
[keychainWrapper writeToKeychain];

稍后您可以找回密码:

// Retrieve the pwd from the device keychain
KeychainWrapper *keychainWrapper = [[KeychainWrapper alloc] init];
NSString *pwd = [keychainWrapper myObjectForKey:@"v_Data"];