iOS 调用TouchID 身份验证
来源:互联网 发布:小学生计算机编程教材 编辑:程序博客网 时间:2024/05/22 13:44
iOS8后苹果开放了Touch ID的API给开发者,这也给我们的app带来了新的体验。开发者们可使用向第三方应用开放了Touch ID权限的API,以便他们在应用中使用指纹认证来完成用户认证或支付购买。本文主要介绍如何在应用中集成Touch ID
来校验用户的身份和注意事项。
支持系统和机型
iOS系统的指纹识别功能最低支持的机型为iPhone 5s
,最低支持系统为iOS 8
,虽然安装iOS 7
系统的5s机型可以使用系统提供的指纹解锁功能,但由于API
并未开放,所以理论上第三方软件不可使用。
依赖框架
在使用前我们需要导入 LocalAuthentication.framework 这个库
这个库必须要Xcode6并且连接的是真机,才不会提示找不到的错误。 如果是模拟器会提示找不到这个库。
注意事项
做iOS 8
以下版本适配时,务必进行API验证,避免调用相关API引起崩溃。
使用类
LAContext
指纹验证操作对象
代码
//验证是否支持TouchID- (void)judgeCanTouchId{ LAContext *context = [LAContext new]; NSError *error; context.localizedFallbackTitle = @"输入密码"; if ([context canEvaluatePolicy:(LAPolicyDeviceOwnerAuthenticationWithBiometrics) error:&error]) { NSLog(@"支持使用"); [context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:NSLocalizedString(@"通过验证指纹解锁",nil) reply:^(BOOL success, NSError * _Nullable error) { if (success) { NSLog(@"验证成功"); } else { /* // 用户未提供有效证书,(3次机会失败 --身份验证失败)。 LAErrorAuthenticationFailed = kLAErrorAuthenticationFailed, // 认证被取消,(用户点击取消按钮)。 LAErrorUserCancel = kLAErrorUserCancel, // 认证被取消,用户点击回退按钮(输入密码)。 LAErrorUserFallback = kLAErrorUserFallback, // 身份验证被系统取消,(比如另一个应用程序去前台,切换到其他 APP)。 LAErrorSystemCancel = kLAErrorSystemCancel, // 身份验证无法启动,因为密码在设备上没有设置。 LAErrorPasscodeNotSet = kLAErrorPasscodeNotSet, // 身份验证无法启动,因为触摸ID在设备上不可用。 LAErrorTouchIDNotAvailable = kLAErrorTouchIDNotAvailable, // 身份验证无法启动,因为没有登记的手指触摸ID。 没有设置指纹密码时。 LAErrorTouchIDNotEnrolled = kLAErrorTouchIDNotEnrolled, **/ if (error.code == kLAErrorUserFallback) { NSLog(@"用户选择了另一种方式"); } else if (error.code == kLAErrorUserCancel) { NSLog(@"用户取消"); } else if (error.code == kLAErrorSystemCancel) { NSLog(@"切换前台被取消"); } else if (error.code == kLAErrorPasscodeNotSet) { NSLog(@"身份验证没有设置"); } else { NSLog(@"验证失败"); } } }]; } else { NSLog(@"不支持使用"); }}运行一下ok了
0 0
- iOS 调用TouchID 身份验证
- ios touchid
- iOS TouchID
- ios TouchId
- iOS指纹识别iOS TouchID
- iOS TouchID的使用
- ios使用touchId
- iOS开发--touchID指纹识别
- iOS TouchID指纹验证
- iOS touchID 处理办法
- ios TouchID的使用
- iOS应用TouchID解锁
- iOS开发之TouchId
- iOS touchID集成
- iOS TouchID指纹解锁
- TouchID
- touchid
- TouchID
- Java8 - nashorn引擎
- GeoTools读取ESRI ShapeFile中文乱码解决方法
- mysql语句
- Java中的多线程你只要看这一篇就够了
- C#索引器
- iOS 调用TouchID 身份验证
- 自定义view中的onmessure方法
- jQuery EasyUI使用教程之在树网格中延迟加载节点
- ionic之$ionicLoading实现加载动画
- php excel导入 导出
- 初学c/c++——深入字符串(sprintf与sscanf)
- windows配置虚拟域名
- 8.10总结
- 数据结构学习笔记之链表