Android BiometricPrompt ошибка анимации при запуске
Я внедрил androidx BiometricPrompt в приложение и столкнулся с проблемой, которая довольно сильно влияет на UX.
В приложении есть экран с клавиатурой, и если он включен, над ним появляется BiometricPrompt, чтобы сделать аутентификацию намного более удобной. Проблема в том, что когда приложение помещается в фоновый режим, а затем возвращается на передний план, в приглашении отображается анимация неудачной аутентификации без каких-либо исключений.
Я предполагаю, что причина этого в том, что когда приложение переходит в фоновый режим, приглашение завершается с ошибкой отмены, и при следующем отображении анимация отображается для предыдущей отмены. Я на самом деле не вижу преимущества этой функциональности, поскольку это должен быть довольно распространенный сценарий.
Я пытался заново создавать само приглашение каждый раз, когда действие возобновляется, но это не повлияло на это поведение. Подсказка и информация подсказки создаются следующим образом:
prompt = BiometricPrompt(this, mainExecutor, object: BiometricPrompt.AuthenticationCallback(){
override fun onAuthenticationSucceeded(result: BiometricPrompt.AuthenticationResult) {
authenticateFingerprint()
}
override fun onAuthenticationError(errorCode: Int, errString: CharSequence) {
if(errorCode==BiometricPrompt.ERROR_NEGATIVE_BUTTON){
biometryCancelled = true
}
}
override fun onAuthenticationFailed() {
}
})
promptInfo = BiometricPrompt.PromptInfo.Builder()
.setTitle("title")
.setNegativeButtonText("cancel")
.build()
prompt.authenticate(promptInfo)
Я застрял с этой проблемой довольно долго, и я был бы признателен за любую помощь.