1.首先导入头文件

#import <LocalAuthentication/LocalAuthentication.h>

2.关键代码

- (void)validateTouchID {
LAContext *context = [[LAContext alloc] init];
NSError *error;
NSString *tip = @"通过Home键验证已有手机指纹";
// 判断手机是否有指纹
if ([context canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&error]) {
[context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:tip reply:^(BOOL success, NSError *error) {
if (success) {
// 验证成功
NSLog(@"success");
} else {
NSLog(@"%@",error.description);
switch (error.code) {
case LAErrorSystemCancel:
NSLog(@"系统取消授权");
break;
case LAErrorUserCancel:
NSLog(@"用户取消");
break;
case LAErrorUserFallback:
NSLog(@"用户输入密码");
break;
default:
break;
}
}
}];
} else {
NSLog(@"不支持指纹识别,%@",error.description);
}
}

3.LAError枚举相关解释

typedef NS_ENUM(NSInteger, LAError) {
/// 认证不成功,因为用户没有提供有效的凭据
LAErrorAuthenticationFailed = kLAErrorAuthenticationFailed, /// 被用户取消验证(例如:“取消”按钮)。
LAErrorUserCancel = kLAErrorUserCancel, /// 认证被取消了,因为用户点击回退按钮(输入密码)。
LAErrorUserFallback = kLAErrorUserFallback, /// 通过系统(例如另一个应用程序的应用程序)被取消验证。
LAErrorSystemCancel = kLAErrorSystemCancel, /// 认证无法启动,因为密码没有设置在设备。
LAErrorPasscodeNotSet = kLAErrorPasscodeNotSet, /// 无法启动验证,因为在设备上不提供触摸标识。
LAErrorTouchIDNotAvailable = kLAErrorTouchIDNotAvailable, /// 无法启动验证,因为触摸标识没有注册手指。
LAErrorTouchIDNotEnrolled = kLAErrorTouchIDNotEnrolled,
} NS_ENUM_AVAILABLE(10_10, 8_0);

4.效果图

如果你不是在wb145230博客园看到本文,请点击查看原文.

iOS Touch ID使用的更多相关文章

  1. iOS Touch ID 身份认证

    iOS Touch ID 身份认证 iOS 8 及以后录了指纹的设备可以使用 touch ID 进行身份认证,指纹符合录入的指纹才能认证成功. 步骤 导入 LocalAuthentication 框架 ...

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

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

  3. iOS Touch ID 简易开发教程

    转自:NsstringFromName 支持系统和机型 iOS系统的指纹识别功能最低支持的机型为iPhone 5s,最低支持系统为iOS 8,虽然安装iOS 7系统的5s机型可以使用系统提供的指纹解锁 ...

  4. iOS Touch Id 开发

    Touch Id Touch Id是iPhone5S后加入的一项新的功能,也就是大家熟知的指纹识别技术.大家用得最多的可能是手机的解屏操作,不用在和以前一样输入手机的四位数密码进行验证.一方面不用担心 ...

  5. iOS 使用Touch ID 校验[新增 iOS9 三种错误]

    iOS8后苹果开放了Touch ID的API给开发者,这也给我们的app带来了新的体验.开发者们可使用向第三方应用开放了Touch ID权限的API,以便他们在应用中使用指纹认证来完成用户认证或支付购 ...

  6. IOS 8 关于 Touch ID

    一.什么是Touch ID? Touch ID是在iPhone 5s后的设备上出现的指纹识别.Apple在IOS 8中开放给第三方APP使用. 可以使用 Touch ID 来验证用户的身份,用户经验证 ...

  7. iOS 中 Touch ID得使用方法

    iPhone 5S公布以后,iOS设备基本都有集成Touch ID.而这个功能对自己的App也是一个非常好的扩展,关于Touch ID的使用方法.大致例如以下, Swift: 引入LocalAuthe ...

  8. iOS 8 中如何集成 Touch ID 功能

    2013年9月,苹果为当时发布的最新iPhone产品配备了一系列硬件升级方案.在iPhone 5s当中,最具创新特性的机制无疑要数围绕Home按钮设计的超薄金属圈,也就是被称为Touch ID的指纹传 ...

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

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

随机推荐

  1. poj 2965 The Pilots Brothers&#39; refrigerator

    The Pilots Brothers' refrigerator Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 18040 ...

  2. oracle dual表

    dual是个虚表,其仅仅有一列. 当查询时间或者日期这些对象的时候就须要使用这个表. 比如: select sysdate from dual; 由于在oracle其中,查询语句必需要有keyword ...

  3. Android 离线语音用法(讯飞语音)

    这次给大家带来的是项目的离线语音功能. 讯飞开放平台中的离线语音 首先创建开放平台的账号.这个不必多说 然后创建新应用 选择我的应用,例如以下图,注意下我打马赛克的地方,这个appId非常重要 点击进 ...

  4. Erlang epmd的角色以及使用

    本文链接地址: Erlang epmd的角色以及使用 很多同学误会了epmd的作用,认为epmd就是erlang集群的协议,我来澄清下: Epmd是Erlang Port Mapper Daemon的 ...

  5. HDU 1502 - dp + 压位

    传送门 题目大意: 3*n的字符串,A.B.C分别有n个,w(X)代表X字母出现的次数,要求该字符串的所有前缀中w(A) >= w(B) >= w(C),问合法方案数有多少. 题目分析: ...

  6. Sqlplus的一般操作

    Sqlplus一些必要操作指令 1, 登陆sys 用户,需要加上 as sysdba Connect sys as sysdba; Input your password; Connected; 2, ...

  7. 【t076】竞赛排名

    Time Limit: 1 second Memory Limit: 128 MB [问题描述] 某市组织了一次中学生科技全能竞赛,每个选手要参加数学.物理.化学.天文.地理.生物.计算机和英语共八项 ...

  8. maven hadoop 3.x HADOOP_HOME and hadoop.home.dir are unset Not implemented by the WebHdfsFileSystem FileSystem implementation

    具体异常如下: 解决方案: 删除pom文件中的hadoop-core的依赖,原因:hadoop-core是1.x的产物,在2.x之后已经被hadoop-common取代,我配置的时候同时使用了这两个依 ...

  9. 定制Octopress

    在 github pages 上搭建好 octopress 博客之后,博客的基本功能就能使用了.如果想自己定制也是没问题的,octopress 有较详尽的官方文档,原则上有问题求助官方即可:octop ...

  10. JPEG图像扩展信息读取和修改

    最近,项目需要使用jpg图像信息被写入(非水印),经过研究发现,Android已封装的读者jpg图片扩展信息api(ExifInterface). 通讯api住址:http://developer.a ...