版权声明:原创文章,未经允许禁止转载! https://blog.csdn.net/mlibai/article/details/51799576
GitHub项目网址:https://github.com/mlibai/XZKeychain
保存密码是App项目中的常见问题,保存到 NSUserDefaults 中,显然不安全,也容易丢失。
钥匙串是Mac和iOS系统中的内置的保存密码方式,不会因为删除App而丢失,支持夸组访问。
但是原生的API太过难操作,网上虽然已经有人封装了相关的API,但总觉得不够明确,且自由度不够,于是花了点时间彻底研究了一下,封装了一个类 XZKeychain 。
下面只是关于保存密码的简单使用,完整的示例已经上传到GitHub,欢迎大家提意见共同交流!
// 获取设备唯一标识符
NSLog(@"设备唯一标识符:%@", [XZKeychain deviceIdentifier]);
// 存取密码的简单方法:
// 保存密码
if ([XZKeychain setPassword:@"aPassword" forAccount:@"anAccount" identifier:@"anIdentifier"]) {
NSLog(@"密码保存成功");
}
// 读取密码
NSString *password = [XZKeychain passwordForAccount:@"anAccount" identifier:@"anIdentifier"];
if (password != nil) {
NSLog(@"获取成功,密码为:%@", password);
}
// 删除密码
if ([XZKeychain setPassword:nil forAccount:@"anAccount" identifier:@"anIdentifier"]) {
NSLog(@"删除成功");
}