1.首先导入头文件

  1. #import <LocalAuthentication/LocalAuthentication.h>

2.关键代码

  1. - (void)validateTouchID {
  2. LAContext *context = [[LAContext alloc] init];
  3. NSError *error;
  4. NSString *tip = @"通过Home键验证已有手机指纹";
  5. // 判断手机是否有指纹
  6. if ([context canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&error]) {
  7. [context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:tip reply:^(BOOL success, NSError *error) {
  8. if (success) {
  9. // 验证成功
  10. NSLog(@"success");
  11. } else {
  12. NSLog(@"%@",error.description);
  13. switch (error.code) {
  14. case LAErrorSystemCancel:
  15. NSLog(@"系统取消授权");
  16. break;
  17. case LAErrorUserCancel:
  18. NSLog(@"用户取消");
  19. break;
  20. case LAErrorUserFallback:
  21. NSLog(@"用户输入密码");
  22. break;
  23. default:
  24. break;
  25. }
  26. }
  27. }];
  28. } else {
  29. NSLog(@"不支持指纹识别,%@",error.description);
  30. }
  31. }

3.LAError枚举相关解释

  1. typedef NS_ENUM(NSInteger, LAError) {
  2. /// 认证不成功,因为用户没有提供有效的凭据
  3. LAErrorAuthenticationFailed = kLAErrorAuthenticationFailed,
  4.  
  5. /// 被用户取消验证(例如:“取消”按钮)。
  6. LAErrorUserCancel = kLAErrorUserCancel,
  7.  
  8. /// 认证被取消了,因为用户点击回退按钮(输入密码)。
  9. LAErrorUserFallback = kLAErrorUserFallback,
  10.  
  11. /// 通过系统(例如另一个应用程序的应用程序)被取消验证。
  12. LAErrorSystemCancel = kLAErrorSystemCancel,
  13.  
  14. /// 认证无法启动,因为密码没有设置在设备。
  15. LAErrorPasscodeNotSet = kLAErrorPasscodeNotSet,
  16.  
  17. /// 无法启动验证,因为在设备上不提供触摸标识。
  18. LAErrorTouchIDNotAvailable = kLAErrorTouchIDNotAvailable,
  19.  
  20. /// 无法启动验证,因为触摸标识没有注册手指。
  21. LAErrorTouchIDNotEnrolled = kLAErrorTouchIDNotEnrolled,
  22. } 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. Ajax的get、post和ajax提交

    JQuery.get(url,[data],[callback],[type]) []里面的参数是可选的,不是必填的. [data]:带发送的key/value数据. [callback]:载入成功时 ...

  2. Xshell Update

    http://blog.netsarang.com/1629/xshell-update-5-0-1332/ Xshell Update (5.0.1332) By Alan Kim Thursday ...

  3. [Django] Building the rest API

    Install the rest api framework: pip install djangorestfamework In settings.py: INSTALLED_APPS = [ 'd ...

  4. 《erlang程序设计》学习笔记-第3章 分布式编程

    http://blog.csdn.net/karl_max/article/details/3985382 1. erlang分布式编程的基本模型 (1) 分布式erlang:这种模型可以让我们在一个 ...

  5. 谷歌 AI 中国中心成立,人工智能势不可挡?

    昨日,谷歌在上海举办了一年一度的Google中国开发者大会.在本届大会上,谷歌云首席科学家李飞飞宣布了一个重磅消息,即在北京将成立谷歌AI中国中心.对于这个即将成立的AI中心谷歌寄予厚望,希望与中国本 ...

  6. 【codeforces 768A】Oath of the Night's Watch

    [题目链接]:http://codeforces.com/contest/768/problem/A [题意] 让你统计这样的数字x的个数; x要满足有严格比它小和严格比它大的数字; [题解] 排个序 ...

  7. Role-based access control modeling and auditing system

    A role-based access control (RBAC) modeling and auditing system is described that enables a user to  ...

  8. tip of Firefox extention foxyproxy

    tip of Firefox extention foxyproxy

  9. 今天犯了个小错误:_dataArray.count>1 和_dataArray.count>0搞混淆了

    _dataArray.count>1 和_dataArray.count>0搞混淆了:当数据为一条时,条件不成立.应该_dataArray.count>=1  或者>0   ( ...

  10. Adaptive partitioning scheduler for multiprocessing system

    A symmetric multiprocessing system includes multiple processing units and corresponding instances of ...