Android 6.0以上,未使用三星类库。使用android-google生物识别库,当用户命中最大尝试数时,它将抛出FINGERPRINT_ERROR_LOCKOUT。
我知道30秒后允许用户再次尝试使用生物识别登录,但我想知道有什么方法可以避免等待30秒吗?正如我可以手动重置它,以便用户可以尝试使用生物识别再次登录,而无需等待30秒倒计时。
我已经在互联网上搜索过了,大多数的解决方案是等到30秒后再让用户尝试生物特征登录。
对于开始侦听,我调用mFingerprintManager.authenticate(),对于取消,我调用mCancellationSignal.cancel(),如果它的状态仍然低于FINGERPRINT_ERROR_LOCKOUT ( 30秒等待时间),它就不起作用,我想知道我可以用什么方法绕过并重置,这样我就不必等待30秒。
发布于 2019-04-30 13:05:10
不,您不能覆盖倒计时-这是Android Compatibility Definition Document的强制要求,特别是7.3.10.1 C-1-5部分
发布于 2019-09-14 14:41:11
您可以等待用户在锁屏上输入密码,也可以使用BiometricPrompt#setDeviceCredentialAllowed接口请求pin/pattern/password。
当输入有效的pin/pattern/password时,Android Framework将重置锁定。
该应用程序接口在框架Q和更早的版本上可用,但在支持锁屏/生物识别的所有API的androidx.biometric库中都可用。
不推荐使用的请求设备凭据的方法是KeyguardManager#createConfirmDeviceCredentialIntent(),即在startActivityForResult中检查RESULT_OK
https://stackoverflow.com/questions/55913361
复制相似问题