触摸ID:锁定生物测量.代码= -8

Mut*_*awe 6 objective-c ios touch-id lacontext

我使用Touch id识别我的应用程序中的iPhone用户,何时canEvaluatePolicy: LAPolicyDeviceOwnerAuthenticationWithBiometrics用于评估用户是否有资格使用Touch ID,但在许多尝试失败后,即使用户有资格使用触摸ID,它也会返回FALSE.

这将导致应用程序跳过此步骤并认为此设备不支持触摸ID.

这是我得到的错误:

Error Domain = com.apple.LocalAuthentication Code = -8"Biometry被锁定." UserInfo = {NSLocalizedDescription = Biometry被锁定.}

tge*_*ski 12

好吧,我认为我找到了答案.希望它会对你有所帮助.当你拿到时

Error Domain=com.apple.LocalAuthentication Code=-8 "Biometry is locked out." UserInfo={NSLocalizedDescription=Biometry is locked out.}

iOS 10阻止访问TouchID,可以通过在iOS解锁屏幕上提供密码,访问TouchID iOS设置并在那里提供密码或从应用程序内手动触发密码屏幕来解锁.您可以使用以下代码段打开密码屏幕.

let context = LAContext()
context.evaluatePolicy(LAPolicy.DeviceOwnerAuthentication,
                           localizedReason: reason,
                           reply: { (success, error) in
})
Run Code Online (Sandbox Code Playgroud)

当然,您可以先检查是否可以评估此​​政策.

因此,最后,当用户成功输入密码时,生物测定将被解锁.在iOS 10之前,这是由操作系统自动完成的.