我目前正在使用 Apple 的 KeychainWrapper 来存储单个用户名和密码,但我想添加能够登录到不同帐户并在我的应用程序中切换它们的功能。
是否将不同钥匙串的标识符存储在 plist 中,然后每次我想更改帐户时重新初始化钥匙串?或者有更好的方法吗?也许是一个 NSMutableArray 的钥匙串?
谢谢,尼克。
我目前正在使用 Apple 的 KeychainWrapper 来存储单个用户名和密码,但我想添加能够登录到不同帐户并在我的应用程序中切换它们的功能。
是否将不同钥匙串的标识符存储在 plist 中,然后每次我想更改帐户时重新初始化钥匙串?或者有更好的方法吗?也许是一个 NSMutableArray 的钥匙串?
谢谢,尼克。
我建议你查看开源的 SFHFKeychainUtils 类。
非常简单,只需要调用一种方法来添加(或更新):
+ (BOOL) storeUsername: (NSString *) username andPassword: (NSString *) password forServiceName: (NSString *) serviceName updateExisting: (BOOL) updateExisting error: (NSError **) error;
...获取存储密码的一种方法:
+ (NSString *) getPasswordForUsername: (NSString *) username andServiceName: (NSString *) serviceName error: (NSError **) error;
...以及一种删除方法:
+ (BOOL) deleteItemForUsername: (NSString *) username andServiceName: (NSString *) serviceName error: (NSError **) error;
它在 GitHub 中可用。您只需拖放类并将安全框架导入您的项目。