iOS指纹解锁
来源:互联网 发布:js实现旋转 编辑:程序博客网 时间:2024/04/30 21:50
转载自:http://blog.csdn.net/hongfengkt/article/details/49868073
在iOS8.0之后,API开放了指纹验证的功能。
指纹验证功能的最低硬件支持为iPhone5s,iPad 6,iPad mini 3这些有touch ID硬件支持的设备,并且操作系统最低为iOS8.0,因为touch ID是在iOS8.0之后才开放的一类api。
———-做iOS8.0下版本适配时,务必进行API验证,避免调用相关API引起崩溃。
引入框架:#import
- (void)authenticateUser{ //初始化上下文对象 LAContext *context = [[LAContext alloc]init]; NSError *error = nil; NSString *result = @"Authentication is needed to access your notes."; //首先使用canEvaluatePolocy判断设备支持状态 if ([context canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&error]) { //支持指纹验证 [context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:result reply:^(BOOL success, NSError * _Nullable error) { if (success) { //验证成功,主线程处理UI NSLog(@"指纹验证成功"); } else { NSLog(@"指纹验证失败=====%@",error.localizedDescription); switch (error.code) { case LAErrorSystemCancel: //切换到其他APP,系统取消验证Touch ID break; case LAErrorUserCancel: //用户取消验证Touch ID break; case LAErrorUserFallback: { [[NSOperationQueue mainQueue]addOperationWithBlock:^{ //用户选择其他验证方式,切换到主线程处理UI }]; break; } default: { [[NSOperationQueue mainQueue] addOperationWithBlock:^{ //其他情况,切换主线程处理 }]; } break; } } }]; } else { //不支持指纹识别,LOG出错误详情 switch (error.code) { case LAErrorTouchIDNotEnrolled: //未录入Touch ID break; case LAErrorPasscodeNotSet: //未设置Touch ID break; default: //Touch ID不可用 break; } NSLog(@"%@",error.localizedDescription); }}
有以下几种情况
typedef NS_ENUM(NSInteger, LAError){ //授权失败 LAErrorAuthenticationFailed = kLAErrorAuthenticationFailed, //用户取消Touch ID授权 LAErrorUserCancel = kLAErrorUserCancel, //用户选择输入密码 LAErrorUserFallback = kLAErrorUserFallback, //系统取消授权(例如其他APP切入) LAErrorSystemCancel = kLAErrorSystemCancel, //系统未设置密码 LAErrorPasscodeNotSet = kLAErrorPasscodeNotSet, //设备Touch ID不可用,例如未打开 LAErrorTouchIDNotAvailable = kLAErrorTouchIDNotAvailable, //设备Touch ID不可用,用户未录入 LAErrorTouchIDNotEnrolled = kLAErrorTouchIDNotEnrolled,} NS_ENUM_AVAILABLE(10_10, 8_0);
0 0
- iOS 指纹解锁
- iOS 指纹解锁
- iOS 指纹解锁
- iOS指纹解锁
- iOS指纹解锁
- ios开发指纹解锁
- iOS指纹解锁Swift
- iOS之指纹解锁
- ios 指纹解锁
- iOS TouchID指纹解锁
- iOS开发之指纹解锁
- iOS开发之指纹解锁
- iOS开发之指纹解锁
- iOS手势解锁和指纹解锁
- iOS开发之iOS8指纹解锁
- iOS开发实现TouchID指纹解锁
- iOS 8.0新特性之指纹解锁
- iOS开发实现TouchID指纹解锁
- python字典按键或值排序
- spark-shell无法退格/删除
- 最大连续字串和与最大连续子串积
- HDU 2577 How to Type DP .
- 为什么Java有GC还需要自己来关闭某些资源?
- iOS指纹解锁
- UltraEdit使用技巧
- hdu 4111 Alice and Bob(中档博弈题)★ ★
- 使用jQuery UI插件实现切换主题功能——经验小结
- 公司(企业与市场)与商业模式
- 20169月17-25日---身体,革命的本钱
- 细说 class类中的this指针与 构造函数
- 解决oracle11g 空表不能exp导出的问题
- yum报错