Swift下调用Touch ID实现指纹识别

如下代码是实现调用5S以上设备指纹识别的代码,按照官网给出的代码,会出现识别成功后很久才执行成功后调用的代码,逛了很久的,,才知道要将其放入主线程实现才可以。具体代码如下。

1、引入类 import LocalAuthentication

//调用指纹识别函数func loginWithTouchID(){if((UIDevice.currentDevice().systemVersionasNSString).floatValue >= 8.0){// Get the local authentication context.let context = LAContext()// Declare a NSError variable.var error: NSError?// Set the reason string that will appear on the authentication alert.var reasonString = "弹出指纹识别框时提示用户的字符串"// Check if the device can evaluate the policy.if context.canEvaluatePolicy(LAPolicy.DeviceOwnerAuthenticationWithBiometrics, error: &error){context.evaluatePolicy(LAPolicy.DeviceOwnerAuthenticationWithBiometrics, localizedReason: reasonString, reply: { (success: Bool, evalPolicyError: NSError?) -> Voidindispatch_async(dispatch_get_main_queue(), { () -> Voidin //放到主线程执行,这里特别重要if success{//调用成功后你想做的事情}else{// If authentication failed then show a message to the console with a short description.// In case that the error is a user fallback, then show the password alert view.println(evalPolicyError?.localizedDescription)}})})}else{// If the security policy cannot be evaluated then show a short message depending on the error.switch error!.code{caseLAError.TouchIDNotEnrolled.rawValue: println("您还没有保存TouchID指纹")caseLAError.PasscodeNotSet.rawValue:println("您还没有设置密码")default:// The LAError.TouchIDNotAvailable case.println("TouchID不可用")}// Optionally the error description can be displayed on the console.println(error?.localizedDescription)// Show the custom alert view to allow users to enter the password.}}}



版权声明:本文为博主原创文章,未经博主允许不得转载。

每一发奋美文努力的背后,必有加倍的赏赐。

Swift下调用Touch ID实现指纹识别

相关文章:

你感兴趣的文章:

标签云: