iOS指纹识别

1.指纹识别的本质是判断手机当前的使用者是手机的主人,只是为了简化操作,并不会省略操作

2.指纹识别是在iOS8.0及之后才可用的

3.指纹识别用到的类库是 <LocalAuthentication/LocalAuthentication.h>

进入头文件可以看到,其中只包含了 LAContext.h和LAError.h

4.代码

// 判断设备版本是否支持

    if ([UIDevice currentDevice].systemVersion.floatValue < 8.0) {

        [self inputUserInfo];

        return;

    }

    

    // 判断设备是否支持指纹识别

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

    if ([ctx canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:NULL]) {

        // 输入指纹

        [ctx evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:@"大减价" reply:^(BOOL success, NSError *error) {

// 注意回调是异步的

            // 如果输入成功,直接进行下一步

            if (success) {

                [self nextStep];

            } else {

                // 判断错误类型是否是自行输入密码,如果是就在主线程中提示用户手动输入

                if (error.code == LAErrorUserFallback) {

                    dispatch_async(dispatch_get_main_queue(), ^{

                        [self inputData];

                    });

                }

            }

        }];

        

    } else {

        NSLog(@"不支持指纹");

        [self inputData];

    }

5.错误类型

LAErrorAuthenticationFailed 授权失败

LAErrorUserCancel 用户取消

LAErrorUserFallback 用户手动输入

LAErrorPasscodeNotSet 没有设置指纹密码

...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值