实用知识:指纹识别功能的实现
来源:互联网 发布:优酷网络剧燃血女神 编辑:程序博客网 时间:2024/05/26 22:57
#import "ViewController.h"// iPhone5S开始, 6S第二代, 指纹识别验证 YES/NO// 授权验证, 指纹识别框架#import <LocalAuthentication/LocalAuthentication.h>@interface ViewController ()// 指纹识别@property (strong, nonatomic) LAContext *context;@end@implementation ViewController- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{ // 弹出指纹验证 self.context = [[LAContext alloc] init]; // 判断硬件是否支持 /** LAPolicyDeviceOwnerAuthenticationWithBiometrics NS_ENUM_AVAILABLE(NA, 8_0) = kLAPolicyDeviceOwnerAuthenticationWithBiometrics, // 指纹识别, 5次失败上锁 LAPolicyDeviceOwnerAuthentication NS_ENUM_AVAILABLE(10_11, 9_0) = kLAPolicyDeviceOwnerAuthentication // 指纹识别, 6次失败上锁 */ NSError *error; // 判断设备是否可以使用指纹识别 BOOL isAuthentication = [self.context canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&error]; if (isAuthentication == NO || error) { NSLog(@"不能使用: %@", error); return; } /** 请求进行指纹识别 localizedReason: 告诉用户使用指纹识别的目的 */ NSString *reason = @"使用指纹进行用户登陆"; [self.context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:reason reply:^(BOOL success, NSError * _Nullable error) { /** // 指纹验证失败 LAErrorAuthenticationFailed = kLAErrorAuthenticationFailed, // 用户取消, 点击了取消按钮 LAErrorUserCancel = kLAErrorUserCancel, // 用户取消, 点出了输入密码 LAErrorUserFallback = kLAErrorUserFallback, // 系统取消, (比如App进入后台) LAErrorSystemCancel = kLAErrorSystemCancel, // 不能开始指纹验证, 设备没有设置密码 LAErrorPasscodeNotSet = kLAErrorPasscodeNotSet, // 不能开始指纹验证, Touch ID 不能用 LAErrorTouchIDNotAvailable = kLAErrorTouchIDNotAvailable, // 不能开始指纹验证, Touch ID 没有录入指纹 LAErrorTouchIDNotEnrolled = kLAErrorTouchIDNotEnrolled, // 指纹验证失败, 太多次的验证失败导致 // TouchID 锁住了, 需要输入密码 LAErrorTouchIDLockout NS_ENUM_AVAILABLE(10_11, 9_0) = kLAErrorTouchIDLockout, // App 取消了指纹验证 LAErrorAppCancel NS_ENUM_AVAILABLE(10_11, 9_0) = kLAErrorAppCancel, /// LAContext passed to this call has been previously invalidated. LAErrorInvalidContext NS_ENUM_AVAILABLE(10_11, 9_0) = kLAErrorInvalidContext */ if (error) { switch (error.code) { case LAErrorAuthenticationFailed: NSLog(@"指纹验证失败"); break; case LAErrorUserCancel: NSLog(@"用户取消了指纹验证"); break; case LAErrorSystemCancel: NSLog(@"系统取消了指纹验证"); break; default: break; } } // 结果回调 if (success) { NSLog(@"验证成功"); // 执行相关的功能代码 } }];}@end
0 0
- 实用知识:指纹识别功能的实现
- 实用知识:录音功能的实现
- C#实现指纹识别功能编程
- 实用知识:原生地图的跳转功能
- 实用知识:实现扫描二维码和条形码功能
- 如何设计APP的指纹识别功能
- 实用知识:摇一摇功能的方法使用(真简单??)
- iPhone指纹识别功能插件,利用指纹实现登陆等功能
- iOS指纹识别功能
- Touch ID指纹识别功能
- android手机中指纹识别应用相关功能的讲解
- php实现邮件发送---实用的小功能(一)
- OC语言实现指纹识别
- iOS实现指纹识别
- Swift实现指纹识别
- 指纹识别解锁实现--iOS
- Touch ID指纹识别功能 iOS8
- iOS_使用LAContext实现TouchID(指纹识别)的使用
- Redis
- 课程练习三-1007-problem G
- 并发入门
- 点-园-圆柱类族的设计
- Linus
- 实用知识:指纹识别功能的实现
- 学习SpringMVC(十四)之关于重定向
- Your Ride Is Here
- 硬件焊接
- c++作业六
- 存储班长信息的学生类
- 位运算(记录前缀和)
- Odoo 序列和工作流
- eclipse设置新建jsp文件默认字符编码为utf-8