应用TouchID解锁
来源:互联网 发布:域名过户需要多长时间 编辑:程序博客网 时间:2024/06/04 01:31
第一步 导入对应的头文件
#import <LocalAuthentication/LocalAuthentication.h>
第二步 创建LAContext对象
LAContext *context = [LAContext new]; context.localizedFallbckTitle = @"右侧按钮标题";
localizedFallbckTitle 设置指纹解锁失败时,提示框的右侧按钮提示语
第三步 判断是否支持指纹解锁
- (BOOL)canEvaluatePolicy:(LAPolicy)policy error:(NSError * __autoreleasing *)error __attribute__((swift_error(none)));
支持指纹解锁,调用下述方法
- (void)evaluatePolicy:(LAPolicy)policy localizedReason:(NSString *)localizedReason reply:(void(^)(BOOL success, NSError * __nullable error))reply;
localizedReason 设置提示语,TouchID用于什么目的
如果支持指纹解锁,在上述reply代码块内对指纹解锁时出现的各种情况进行下一步处理。
示例代码如下:
- (void)TouchIDAction{ // 第二步,创建LAContext对象 LAContext *context = [LAContext new]; context.localizedFallbackTitle = @"右侧按钮标题"; // 解锁失败时,右侧按钮标题 NSError *error = nil; // 第三步,判断是否支持指纹 if ([context canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&error]) { NSLog(@"支持指纹解锁"); [context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:@"通过Home键验证已有手机指纹" reply:^(BOOL success, NSError * _Nullable error) { if (success) { NSLog(@"指纹验证成功,返回主界面"); }else{ NSLog(@"%@",error.localizedDescription); switch (error.code) { case LAErrorSystemCancel: NSLog(@"系统取消授权"); break; case LAErrorUserCancel: NSLog(@"用户取消指纹验证"); break; case LAErrorAuthenticationFailed: NSLog(@"提供验证的指纹,不存在"); break; case LAErrorPasscodeNotSet: NSLog(@"未设置指纹密码"); break; case LAErrorTouchIDNotEnrolled: NSLog(@"不能验证,指纹未被录入"); break; case LAErrorTouchIDNotAvailable: NSLog(@"不能获取到指纹"); break; case LAErrorUserFallback: NSLog(@"用户选择不使用TouchID解锁,即解锁失败后,点击右侧按钮"); [[NSOperationQueue mainQueue] addOperationWithBlock:^{ NSLog(@"用户选择使用密码登录"); }]; break; default: [[NSOperationQueue mainQueue] addOperationWithBlock:^{ NSLog(@"未知情况,返回主线程进行处理"); }]; break; } } }]; }else{ NSLog(@"不支持指纹解锁"); NSLog(@"%@",error.localizedDescription); }}
1 0
- iOS应用TouchID解锁
- 应用TouchID解锁
- TouchID 指纹解锁
- iOS TouchID指纹解锁
- CoreBluetooth - TouchID应用
- iOS开发实现TouchID指纹解锁
- iOS开发实现TouchID指纹解锁
- iOS开发实现TouchID指纹解锁
- iOS开发实现TouchID指纹解锁
- iOS开发 手势密码解锁和指纹TouchID解锁
- TouchID
- touchid
- TouchID
- touchID
- iOS学习笔记02-指纹验证TouchID简单应用1
- iOS学习笔记03-指纹验证TouchID简单应用2
- ios touchid
- iOS8:TouchID
- Android+PHP+MySQL实现新闻列表(一)
- 关于html:css:js:xml:jsp:mysql:oracle:java注释的符号
- boost库--常见函数
- 第四章——函数与程序结构
- halcon学习笔记(3)——critical_points例子学习(图像分割Region)
- 应用TouchID解锁
- redis介绍
- 给ImageView添加tag,避免view复用导致图片的重复
- cctype中的字符函数,头文件#include <cctype>
- [设计模式]桥接模式
- ffmpeg概述
- 【C#MVC4】菜单管理和访问权限分配(一)
- http://www.php1.cn/Content/ChangJian_PHP_CuoWuLeiXingJiPingBiFangFa.html
- 替换空格——剑指offer