iOS 개발 swift-지문인식

2591 단어

코드 예제

    //  import LocalAuthentication
    func touchID() {
        // 
        let context = LAContext()
        var error : NSError?
        // 
        if context.canEvaluatePolicy(.deviceOwnerAuthenticationWithBiometrics, error: &error)
        {
            // 
            context.evaluatePolicy(.deviceOwnerAuthenticationWithBiometrics, localizedReason: " ", reply: { (success, error) in
                if success {
                    debugPrint("successful")
                    //do what you want
                }else
                {
                    if let error = error as NSError?
                    {
                        switch error.code {
                        case LAError.appCancel.rawValue:
                            debugPrint("Authentication was cancelled by application")
                            
                        case LAError.authenticationFailed.rawValue:
                            debugPrint("The user failed to provide valid credentials")
                            
                        case LAError.invalidContext.rawValue:
                            debugPrint("The context is invalid")
                            
                        case LAError.passcodeNotSet.rawValue:
                            debugPrint("Passcode is not set on the device")
                            
                        case LAError.systemCancel.rawValue:
                            debugPrint("Authentication was cancelled by the system")
                            
                        case LAError.touchIDLockout.rawValue:
                            debugPrint("Too many failed attempts.")
                            
                        case LAError.touchIDNotAvailable.rawValue:
                            debugPrint("TouchID is not available on the device")
                            
                        case LAError.userCancel.rawValue:
                            debugPrint("The user did cancel")
                            
                        case LAError.userFallback.rawValue:
                            debugPrint("The user chose to use the fallback")
                            
                        default:
                            debugPrint( "Did not find error code on LAError object")
                        }
                    }
                }
            })
        }else
        {
            debugPrint("no support")
        }
    }

좋은 웹페이지 즐겨찾기