iOS指纹解锁

1、首先,引入依赖框架 LocalAuthentication.framework

#import <LocalAuthentication/LocalAuthentication.h>

2、然后,判断系统是否为iOS8及以上

//iOS8.0后才支持指纹识别接口
if ([UIDevice currentDevice].systemVersion.floatValue < 8.0) {
return;
}

3、最后,在APP启动时调用以下方法即可完成指纹解锁的全部功能集成

- (void)evaluateAuthenticate
{
//创建LAContext
LAContext* context = [[LAContext alloc] init];
NSError* error = nil;
NSString* result = @"请验证已有指纹"; //首先使用canEvaluatePolicy 判断设备支持状态
if ([context canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&error]) {
//支持指纹验证
[context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:result reply:^(BOOL success, NSError *error) {
if (success) {
//验证成功,主线程处理UI
}
else
{
NSLog(@"%@",error.localizedDescription);
switch (error.code) {
case LAErrorSystemCancel:
{
//系统取消授权,如其他APP切入
break;
}
case LAErrorUserCancel:
{
//用户取消验证Touch ID
break;
}
case LAErrorAuthenticationFailed:
{
//授权失败
break;
}
case LAErrorPasscodeNotSet:
{
//系统未设置密码
break;
}
case LAErrorTouchIDNotAvailable:
{
//设备Touch ID不可用,例如未打开
break;
}
case LAErrorTouchIDNotEnrolled:
{
//设备Touch ID不可用,用户未录入
break;
}
case LAErrorUserFallback:
{
[[NSOperationQueue mainQueue] addOperationWithBlock:^{
//用户选择输入密码,切换主线程处理 }];
break;
}
default:
{
[[NSOperationQueue mainQueue] addOperationWithBlock:^{
//其他情况,切换主线程处理
}];
break;
}
}
}
}];
}
else
{
//不支持指纹识别,LOG出错误详情
NSLog(@"不支持指纹识别"); switch (error.code) {
case LAErrorTouchIDNotEnrolled:
{
NSLog(@"TouchID is not enrolled");
break;
}
case LAErrorPasscodeNotSet:
{
NSLog(@"A passcode has not been set");
break;
}
default:
{
NSLog(@"TouchID not available");
break;
}
} NSLog(@"%@",error.localizedDescription);
}
}

iOS 指纹解锁 验证TouchID的更多相关文章

  1. iOS 指纹解锁

    目前常用的App支持指纹解锁的还不是很多,如果在你的项目中用一下是不是显得高大上呢? 废话不说多,干货- 1.在工程中添加LocalAuthentication.framework 2.在需要验证的c ...

  2. iOS --- Touch ID指纹解锁

    https://www.cnblogs.com/ljmaque/p/TouchID.html 最近在项目中刚好用到了TouchId指纹解锁功能,之前也没有接触过,立马百度看看究竟是要如何使用,发现其实 ...

  3. ios --指纹TouchID

    最近在做一套登录系统,包括指纹登录.手势登录以及账号密码登录,在此简单记录一下指纹的处理逻辑. 指纹处理: 1.处理iOS 9.0之后,指纹被锁不会自动弹出密码解锁的情况: 2.处理iOS 10.*系 ...

  4. TouchID 指纹解锁

    概述 TouchID 指纹解锁 详细 代码下载:http://www.demodashi.com/demo/10701.html 一.软硬件支持 指纹验证功能的最低硬件支持为iPhone5s, iPa ...

  5. 基于 LocalAuthentication 框架的指纹解锁

    效果 想必大家对 iPhone 的指纹解锁功能已经相当的熟悉了.来看看效果吧! Local Authentication 概述 Local Authentication 框架提供了按照指定的安全策略请 ...

  6. iOS9 集成指纹解锁

    添加依赖库 LocalAuthentication.framework #import <LocalAuthentication/LocalAuthentication.h> // 头文件 ...

  7. iOS指纹识别Touch ID的安全性探讨

    苹果公司在 iPhone 5s 的发布会上公布了全新的指纹识别安全技术,也就是 Touch ID,开创了生物安全识别技术在便携设备上使用的新篇章.此后,苹果还将此技术带到了 iPad 上.此前没有任何 ...

  8. 新iPhone有望加入指纹解锁,你会买吗?

    苹果新款iPhone即将在9月份正式发布,或命名为iPhone 13或者iPhone 12s.据外媒报道,新一代iPhone的屏幕和相机都将迎来重大升级,同时还将首次加入屏下指纹解锁技术.你期待吗? ...

  9. iOS - (个人隐私钱包调用系统本机TouchID指纹锁验证)

    // //  ViewController.m //  TouchID指纹验证 // //  Created by apple on 16/9/18. //  Copyright © 2016年 ap ...

随机推荐

  1. Go的50度灰:开发者要注意的陷阱和常见错误

    Go是一门简单有趣的语言,但与其他语言类似,它会有一些技巧...这些技巧的绝大部分并不是Go的缺陷造成的.如果你以前使用的是其他语言,那么这其中的有些错误就是很自然的陷阱.其它的是由错误的假设和缺少细 ...

  2. springmvc 项目完整示例09 maven项目创建

    需求表均同springmvc案例 此处只是使用maven 注意,以下所有需要建立在你的eclipse等已经集成配置好了maven了,说白了就是新建项目的时候已经可以找到maven了 没有的话需要安装m ...

  3. 【转载】使用Jquery操作Cookie对象

    Cookies是一种能够让网站服务器把少量数据储存到客户端的硬盘或内存,或是从客户端的硬盘读取数据的一种技术.jQuery是一个封装好的JavaScript库,使用jQuery可以极大地简化了Java ...

  4. c# 使用迭代器来创建可枚举类型

    class Program { public IEnumerator<string> GetEnumerator() { IEnumerable<string> my = Bl ...

  5. RabbitMQ 基本概念总结

    1.ack模式-应答模式 执行一个任务可能需要花费几秒钟,你可能会担心如果一个消费者在执行任务过程中挂掉了.一旦RabbitMQ将消息分发给了消费者,就会从内存中删除.在这种情况下,如果正在执行任务的 ...

  6. ajax 跨域请求解决方案

    1.为什么出现跨域: 前端和后端同一个项目下,ajax请求的地址是localhost同一个端口是话,是不会出现跨域问题的,所以相反前端和后端分开时,ajax请求的地址或者端口不是跟后台相同时就会出现跨 ...

  7. [小知识点] react 性能

    场景: jsx 绑定方法 方法有3种 1: // 在html中,使用箭头函数,自动绑定this class SearchHistory extends React.Component {      c ...

  8. yarn 命令

    使用yarn的优点,简而言之就是:锁定版本,下载之前检查完整性. yarn install //安装依赖 yarn upgrade //更新 yarn upgrade immutable //更新指定 ...

  9. idea护眼色设置

    idea右侧编辑区设置护眼色

  10. JS无法获取display为none的隐藏元素的宽度和高度的解决方案

    在实际开发中会遇到确实需要获取隐藏元素的宽高,这儿所说的隐藏元素是display为none的元素. 可使用jQuery Actual Plugin插件来完成,其源码如下: ;( function ( ...