При использовании BiometricPrompt с setDeviceCredentialAllowed(true)
и выполнении нескольких неудачных аутентификаций отпечатков пальцев я ожидаю, что устройство откажется от запроса PIN-кода / шаблона для разблокировки устройства. По моему опыту, ни одно устройство Android ниже Android 10 на самом деле не делает этого.
На самом деле происходит то, что я получаю ошибку ERROR_LOCKOUT
на onAuthenticationError
, а затем система считывания отпечатков пальцев отключается. Это означает, что, хотя у меня есть кнопка «Войти по отпечатку пальца» в пользовательском интерфейсе, она не будет ничего делать, если пользователь не прошел аутентификацию несколько раз.
На моем OnePlus 7 Pro, работающем Android 10, поведение правильное; после нескольких неудачных попыток аутентификации диалоговое окно запрашивает PIN-код. Используя AndroidX Biometrics, я ожидаю, что такое же поведение произойдет и на старых устройствах. Или я ошибаюсь?
Редактировать: Создан отчет об ошибке в Google: https://issuetracker.google.com/issues/148045413