Когда я использую Fingerprint и AndroidKeystoreProvider вместе, в моем приложении происходит что-то странное.
Вот случай:
Я создаю KeyPair с помощью KeyPairGenerator.
В сборщике я установил setUserAuthenticationRequired(true) и setUserAuthenticationValidityDurationSeconds(10).
В мой отпечаток пальца я зарегистрировал 3 пальца.
Когда я пытаюсь запустить алгоритм подписи с помощью initSign(...) в первый раз, обнаруживается UserNotAuthenticatedException. Это справедливо. (https://developer.android.com/reference ... ption.html)
Затем я регистрирую новый палец в свой отпечаток пальца.
Поэтому я ожидаю, что при запуске алгоритма подписи он должен перехватить исключение KeyPermanallyInvalidatedException, как описано в документации Google. (https://developer.android.com/reference ... ption.html), но это не так. UserNotAuthenticatedException всегда перехватывается.
Если я удалю setUserAuthenticationValidityDurationSeconds(10), все будет работать как положено. (KeyPermanallyInvalidatedException хорошо перехватывается)
Знаете ли вы, есть ли способ заставить оба исключения работать с setUserAuthenticationRequired(true) и setUserAuthenticationValidityDurationSeconds(10) ?
Подробнее здесь: https://stackoverflow.com/questions/440 ... uthenticat