|
|
|
#import <LocalAuthentication/LocalAuthentication.h>
|
|
/**
|
* TouchID 状态
|
*/
|
typedef NS_ENUM(NSUInteger, TDTouchIDState){
|
|
/**
|
* 当前设备不支持TouchID
|
*/
|
TDTouchIDStateNotSupport = 0,
|
/**
|
* TouchID 验证成功
|
*/
|
TDTouchIDStateSuccess = 1,
|
|
/**
|
* TouchID 验证失败
|
*/
|
TDTouchIDStateFail = 2,
|
/**
|
* TouchID 被用户手动取消
|
*/
|
TDTouchIDStateUserCancel = 3,
|
/**
|
* 用户不使用TouchID,选择手动输入密码
|
*/
|
TDTouchIDStateInputPassword = 4,
|
/**
|
* TouchID 被系统取消 (如遇到来电,锁屏,按了Home键等)
|
*/
|
TDTouchIDStateSystemCancel = 5,
|
/**
|
* TouchID 无法启动,因为用户没有设置密码
|
*/
|
TDTouchIDStatePasswordNotSet = 6,
|
/**
|
* TouchID 无法启动,因为用户没有设置TouchID
|
*/
|
TDTouchIDStateTouchIDNotSet = 7,
|
/**
|
* TouchID 无效
|
*/
|
TDTouchIDStateTouchIDNotAvailable = 8,
|
/**
|
* TouchID 被锁定(连续多次验证TouchID失败,系统需要用户手动输入密码)
|
*/
|
TDTouchIDStateTouchIDLockout = 9,
|
/**
|
* 当前软件被挂起并取消了授权 (如App进入了后台等)
|
*/
|
TDTouchIDStateAppCancel = 10,
|
/**
|
* 当前软件被挂起并取消了授权 (LAContext对象无效)
|
*/
|
TDTouchIDStateInvalidContext = 11,
|
/**
|
* 系统版本不支持TouchID (必须高于iOS 8.0才能使用)
|
*/
|
TDTouchIDStateVersionNotSupport = 12
|
};
|
|
|
|
@interface TDTouchID : NSObject
|
|
typedef void (^StateBlock)(TDTouchIDState state,NSError *error);
|
|
|
/**
|
启动TouchID进行验证
|
|
@param desc Touch显示的描述
|
@param block 回调状态的block
|
*/
|
|
+ (void)td_showTouchIDWithDescribe:(NSString *)desc BlockState:(StateBlock)block;
|
|
|
@end
|