iOS SDK详解之App使用Touch ID认证

来源:互联网 发布:c语言简单程序100例 编辑:程序博客网 时间:2024/06/05 09:28

原创Blog,转载请注明出处
blog.csdn.net/hello_hwc


前言:从iOS 8.0之后,Apple 开放了App使用Touch ID来认证。但是有几点要注意:

  • App只是把认证的过程代理给iOS系统了,并不能获得指纹的具体信息
  • 不要试图把指纹信息和其他的数据库比较,在我写的这天还是不可能的。

使用的效果图

开始验证

验证失败


支持的设备

  • iPhone 5s +
  • iPad Air 2 +
  • iPad Mini 3 +

如何使用
导入使用的framework

#import <LocalAuthentication/LocalAuthentication.h>

初始化一个LAContext

  LAContext * context = [[LAContext alloc] init];

检查当前设备是否支持TouchID

NSError * error = nil;    if ([context canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&error]) {    ...

如果支持,则进行Touch ID认证

[context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:@"To login in" reply:^(BOOL success, NSError *error) {            if (success) {                //成功            }else{                   //失败            }}];   

其中,失败返回的Error一共有几种

  • LAErrorAuthenticationFailed - 指纹认证失败
  • LAErrorUserCancel - 用户取消认证(例如点击cancel)
  • LAErrorUserFallback - 用户取消(点击输入password)
  • LAErrorSystemCancel - 系统取消
  • LAErrorPasscodeNotSet - 系统没有设置密码
  • LAErrorTouchIDNotAvailable - 设备不支持TouchID
  • LAErrorTouchIDNotEnrolled - Touch ID没有设置(一个指纹没有)

1 0
原创粉丝点击