【问题标题】:How much time is locked Touch ID? "Biometry is locked out."Touch ID 锁定多少时间? “生物测定被锁定。”
【发布时间】:2017-06-15 12:16:11
【问题描述】:

我正在尝试实现 Touch ID 登录,但是当用户失败次数超过最大尝试次数时,我会收到此错误 "Error Domain=com.apple.LocalAuthentication Code=-8 "Biometry is locked out." UserInfo ={NSLocalizedDescription=生物特征被锁定。}"

我想知道:

  • 多少时间,我在哪里可以检查它被锁定的触摸ID?
  • 是否可以在不显示密码的情况下强制解锁?
  • 如果用户使用密码的所有尝试都失败了,触摸 id 被锁定了多长时间,或者我该如何强制解锁?

谢谢!

【问题讨论】:

    标签: ios objective-c fingerprint touch-id


    【解决方案1】:

    Touch ID 一旦因错误尝试而被锁定,将被锁定,直到用户输入密码。所以没有固定时间。解锁的唯一方法是从此时开始输入密码,并且出于显而易见的原因,无法强制解锁。

    【讨论】:

    • 但是不知道锁定后要等多久解锁呢?我的意思是,当您使用生物识别失败 X 次,然后使用密码失败 X 次时,iPhone 会锁定这两种方法,但我看不出我需要等待多少时间才能解锁。
    • 您不会被告知手机被锁定的时间。绝对没有办法知道这些信息。其次,如果您试图在您的应用程序中确定这一点,您可能会以不正确的方式解决问题。
    • 没有办法处理这个吗??
    • @shaqirsaiyed - 有办法解决这个问题。但是,无法覆盖安全功能。
    • @RobertJ.Clegg 通过句柄你的意思是我们可以向用户显示一些警报吗?就像如果用户在几次尝试后被锁定然后......
    【解决方案2】:

    您可以通过使用密码验证用户身份来解锁生物识别。 只需将此函数粘贴到您的项目中并在使用 Touch ID 验证用户之前调用此函数。

    如果它返回 true,则运行 Touch ID 身份验证,并且如果由于生物识别锁定而失败,它将要求用户输入 iPhone 密码以解锁生物识别。这将在应用内发生。

    func isBiometryReady() -> Bool
    {
            let context : LAContext = LAContext();
                    var error : NSError?
    
                    context.localizedFallbackTitle = ""
                    context.localizedCancelTitle = "Enter Using Passcode"
    
                    if (context.canEvaluatePolicy(LAPolicy.deviceOwnerAuthenticationWithBiometrics, error: &error))
                    {
                            return true
                    }
    
                    if error?.code == -8
                    {
                        let reason:String = "TouchID has been locked out due to few fail attemp. Enter iPhone passcode to enable touchID.";
                        context.evaluatePolicy(LAPolicy.deviceOwnerAuthentication,
                                               localizedReason: reason,
                                               reply: { (success, error) in
    
                                                return false
    
                        })
    
                        return true
    
    
                    }
    
            return false
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多