setUserAuthenticationValidityDurationSeconds не работает с BiometricPrompt - PullRequest
1 голос
/ 08 мая 2019

Я реализовал биометрическую аутентификацию с помощью BiometricPrompt (androidx). Это работает хорошо, но я могу использовать ключ только один раз. Если я пытаюсь использовать его второй раз сразу после первого - я получаю исключение UserNotAuthenticatedException. Для создания ключа я использую этот код:

KeyGenParameterSpec.Builder(alias, KeyProperties.PURPOSE_ENCRYPT or KeyProperties.PURPOSE_DECRYPT)
    .setDigests(KeyProperties.DIGEST_SHA256, KeyProperties.DIGEST_SHA512)
    .setEncryptionPaddings(KeyProperties.ENCRYPTION_PADDING_RSA_OAEP)
    .setUserAuthenticationRequired(true)
    .build()

Я также пытаюсь добавить .setUserAuthenticationValidityDurationSeconds(10), чтобы решить мою проблему. Но работает только после разблокировки устройства кнопкой питания. И не работает запрос BiometricPrompt. Это похоже на ошибку. Решение существует?

...