Je mets en œuvre l'authentification biométrique avec BiometricPrompt (androidx). Cela fonctionne bien mais je ne peux utiliser la clé qu'une seule fois. Si j'essaie de l'utiliser une deuxième fois immédiatement après la première fois, je reçois une exception UserNotAuthenticatedException. Pour la création de clé, j'utilise ce code :
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()
J'essaie également d'ajouter .setUserAuthenticationValidityDurationSeconds(10)
pour résoudre mon problème. Mais cela ne fonctionne que après avoir déverrouillé l'appareil en utilisant le bouton d'alimentation. Et ne fonctionne pas avec la demande BiometricPrompt. Cela ressemble à un bug. Existe-t-il une solution ?