一个与 iOS Keychain Services 行为类似、类似 NSUserDefaults
的包装器。
使用方法
将以下文件导入到您的项目中,然后 #import
LUKeychainAccess.h 文件。
LUKeychainAccess.h
LUKeychainAccess.m
在构建设置的“链接二进制使用库”中添加 Security.framework
。
与使用 NSUserDefaults
类似地使用 LUKeychainAccess
。
[[LUKeychainAccess standardKeychainAccess] setBool:NO forKey:@"authorized"];
BOOL authorized = [[LUKeychainAccess standardKeychainAccess] boolForKey:@"authorized"];
提供了获取和设置 BOOL、double、float 和 NSInteger 类型的成员函数,以及 NSString
、NSData
和通用的 NSObject
对象的方法。您可以使用任何可以使用 NSKeyedArchiver
编码的对象。
无障碍功能
Keychain Services 为键链项何时可读提供了几种选项。
此选项可以通过 LUKeychainAccess
中的 accessibilityState
参数设置。其可能值与 Apple 提供的值相匹配。
LUKeychainAccessAttrAccessibleAfterFirstUnlock
LUKeychainAccessAttrAccessibleAfterFirstUnlockThisDeviceOnly
LUKeychainAccessAttrAccessibleAlways
LUKeychainAccessAttrAccessibleAlwaysThisDeviceOnly
LUKeychainAccessAttrAccessibleWhenUnlocked
LUKeychainAccessAttrAccessibleWhenUnlockedThisDeviceOnly
默认值为 LUKeychainAccessAttrAccessibleWhenUnlocked
。
错误处理
LUKeychainAccess
实例可以可选地提供一个错误处理程序,该处理程序可以是实现 LUKeychainErrorHandler
协议的任何对象。如果发生错误,将通知此错误处理程序。
要求
LUKeychainAccess
需要 iOS 9.0+。测试是用 Kiwi 编写的。
许可
LUKeychainAccess
由 Costa Walcott 编写,并受版权 2012-2018 SCVNGR, Inc D.B.A. LevelUp 保护。它是免费软件,可以根据 MIT-LICENSE 文件中指定的条款进行重新分发。