Android指纹在一段时间内只允许尝试5次
Android Fingerprint only allows 5 attempts at a period of time
我正在开发需要指纹才能打开 Activity 的 Android 应用程序。我刚刚注意到,当我使用指纹解锁我的 phone 时,在我的应用程序中尝试扫描指纹的次数只变成了 4 次。
例如:
Phone已解锁
使用指纹解锁phone
打开我的指纹应用程序
不能尝试扫描指纹超过 4 次
另一种情况:
指纹应用程序已打开
仅接受 5 次尝试,应用将不再尝试扫描指纹
稍等一段时间,同样,一个时间内只接受5次尝试
有解决办法吗?
我做了一些研究并找到了 Android 6.0 Compatibility Definition Document。
这是在指纹传感器部分说明的:
Device implementations with a secure lock screen SHOULD include a fingerprint sensor. If a device
implementation includes a fingerprint sensor and has a corresponding API for third-party developers,
it:
MUST rate limit attempts for at least 30 seconds after 5 false trials for fingerprint
verification.
所以..我想目前没有解决方法。
在搜索我遇到的相同问题时遇到了这个 Whosebug。
无论如何,使用最新的 API BiometricPrompt,我们现在可以通过覆盖 AuthenticationCallback
来自定义行为
BiometricPrompt.AuthenticationCallback() {
override fun onAuthenticationError(
errorCode: Int,
errString: CharSequence
) {
super.onAuthenticationError(errorCode, errString)
}
override fun onAuthenticationSucceeded(
result: BiometricPrompt.AuthenticationResult
) {
super.onAuthenticationSucceeded(result)
}
// called when an attempt to authenticate with biometrics fails
// i.e. invalid fingerprint
override fun onAuthenticationFailed() {
super.onAuthenticationFailed()
// keep track of a counter here and decide when to dismiss the dialog
biometricPrompt?.cancelAuthentication()
}
}
我正在开发需要指纹才能打开 Activity 的 Android 应用程序。我刚刚注意到,当我使用指纹解锁我的 phone 时,在我的应用程序中尝试扫描指纹的次数只变成了 4 次。
例如:
Phone已解锁
使用指纹解锁phone
打开我的指纹应用程序
不能尝试扫描指纹超过 4 次
另一种情况:
指纹应用程序已打开
仅接受 5 次尝试,应用将不再尝试扫描指纹
稍等一段时间,同样,一个时间内只接受5次尝试
有解决办法吗?
我做了一些研究并找到了 Android 6.0 Compatibility Definition Document。
这是在指纹传感器部分说明的:
Device implementations with a secure lock screen SHOULD include a fingerprint sensor. If a device implementation includes a fingerprint sensor and has a corresponding API for third-party developers, it:
MUST rate limit attempts for at least 30 seconds after 5 false trials for fingerprint verification.
所以..我想目前没有解决方法。
在搜索我遇到的相同问题时遇到了这个 Whosebug。
无论如何,使用最新的 API BiometricPrompt,我们现在可以通过覆盖 AuthenticationCallback
来自定义行为BiometricPrompt.AuthenticationCallback() {
override fun onAuthenticationError(
errorCode: Int,
errString: CharSequence
) {
super.onAuthenticationError(errorCode, errString)
}
override fun onAuthenticationSucceeded(
result: BiometricPrompt.AuthenticationResult
) {
super.onAuthenticationSucceeded(result)
}
// called when an attempt to authenticate with biometrics fails
// i.e. invalid fingerprint
override fun onAuthenticationFailed() {
super.onAuthenticationFailed()
// keep track of a counter here and decide when to dismiss the dialog
biometricPrompt?.cancelAuthentication()
}
}