iOS 第三方读取指纹

  第三方读取指纹必须是在ios8以上

首先导入TouchId的必须库 #import <LocalAuthentication/LocalAuthentication.h> 这个库必须要Xcode6并且连接的是真机,才不会提示找不到的错误,即使不是iPhone5s都行. 如果是模拟器会提示找不到这个库

然后在某个触发的事件内写上如下代码

 
     UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"" message:@"" delegate:self cancelButtonTitle:@"Okay" otherButtonTitles:nil, nil];

    LAContext *myContext = [[LAContext alloc] init];
    NSError *authError = nil;
    NSString *myLocalizedReasonString = @"Restricted Area!";

    if ([myContext canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&authError]) {
        [myContext evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics
                  localizedReason:myLocalizedReasonString
                            reply:^(BOOL success, NSError *error) {
                                if (success) {
                                    // User authenticated successfully, take appropriate action
                                    alert.title = @"Success";
                                    alert.message = @"You have access to private content!";
                                    [alert show];
                                } else {
                                    // User did not authenticate successfully, look at error and take appropriate action
                                    alert.title = @"Fail";

                                    switch (error.code) {
                                        case LAErrorUserCancel:
                                            alert.message = @"Authentication Cancelled";
                                            break;

                                        case LAErrorAuthenticationFailed:
                                            alert.message = @"Authentication Failed";
                                            break;

                                        case LAErrorPasscodeNotSet:
                                            alert.message = @"Passcode is not set";
                                            break;

                                        case LAErrorSystemCancel:
                                            alert.message = @"System cancelled authentication";
                                            break;

                                        case LAErrorUserFallback:
                                            alert.message = @"You chosed to try password";
                                            break;

                                        default:
                                            alert.message = @"You cannot access to private content!";
                                            break;
                                    }
                                    [alert show];
                                }
                            }];
    } else {
        // Could not evaluate policy; look at authError and present an appropriate message to user
        alert.title = @"Warning";

        if(authError.code == LAErrorTouchIDNotEnrolled) {
            alert.message = @"You do not have any fingerprints enrolled!";
        }else if(authError.code == LAErrorTouchIDNotAvailable) {
            alert.message = @"Your device does not support TouchID authentication!";
        }else if(authError.code == LAErrorPasscodeNotSet){
            alert.message = @"Your passcode has not been set";
        }

        [alert show];
    }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值