Биометрический Android-хит FINGERPRINT_ERROR_LOCKOUT как выполнить сброс без ожидания 30 секунд

Android 6.0 выше, без использования библиотеки Samsung. Используя биометрическую библиотеку Android-Google, когда пользователь нажимает максимум попыток, он выбрасывает FINGERPRINT_ERROR_LOCKOUT.

Я знаю, что через 30 секунд пользователю разрешено снова попробовать войти в систему, используя биометрические данные, но я хочу знать, есть ли способ избежать ожидания 30 секунд? Как и в случае, я могу вручную сбросить его, чтобы пользователь мог снова попробовать войти в систему, используя биометрические данные, не дожидаясь обратного отсчета 30 секунд.

Я искал в Интернете, большая часть решения - подождать до 30 секунд, а затем позволить пользователю снова попробовать биометрический вход.

Для начала прослушивания я вызываю mFingerprintManager.authenticate(), для отмены вызываю mCancellationSignal.cancel(), он не работает, если его состояние все еще находится под FINGERPRINT_ERROR_LOCKOUT (время ожидания 30 секунд), я хочу знать, каким образом я могу обойти и Сброс, поэтому мне не нужно ждать в течение 30 секунд.

1 ответ

Нет, вы не можете переопределить обратный отсчет - это требование, установленное Документом определения совместимости Android, в частности, раздел 7.3.10.1 C-1-5:

  • [C-1-5] ДОЛЖЕН предпринимать попытки ограничения скорости не менее 30 секунд после пяти ложных испытаний для проверки отпечатка пальца.

Вы можете либо дождаться, пока пользователь введет свой пароль на заблокированном экране, либо вы можете использовать BiometricPrompt#setDeviceCredentialAllowed API для запроса пин-кода / шаблона / пароля.

Android Framework сбрасывает блокировку при вводе действительного PIN-кода / шаблона / пароля.

API доступен на платформе Q и старше, но доступен на androidx.biometric библиотека для всех API, где поддерживается экран блокировки / биометрические данные.

Устаревший метод запроса учетных данных устройства: KeyguardManager#createConfirmDeviceCredentialIntent(), проверка на RESULT_OK в startActivityForResult

Другие вопросы по тегам