Я использую библиотеку android Biometricx для аутентификации по лицу и отпечатку пальца. Когда зарегистрирован только FaceID, и я пытаюсь создать секретный ключ, я получаю « IllegalStatException: для создания ключей, требующих аутентификации пользователя » * 1005, необходимо зарегистрировать хотя бы один биометри c. *
Я пытаюсь создать secretKey вот так
try {
mKeyGenerator.init(new KeyGenParameterSpec.Builder(KEY_NAME,
KeyProperties.PURPOSE_ENCRYPT |
KeyProperties.PURPOSE_DECRYPT)
.setBlockModes(KeyProperties.BLOCK_MODE_CBC)
// Require the user to authenticate with a fingerprint to authorize every use
// of the key
.setUserAuthenticationRequired(true)
.setEncryptionPaddings(KeyProperties.ENCRYPTION_PADDING_PKCS7)
.build());
secretKey = mKeyGenerator.generateKey();
} catch (NoSuchAlgorithmException | InvalidAlgorithmParameterException
| CertificateException | IOException e) {
Toast.makeText(this,"Create Key "+ e.getLocalizedMessage(), Toast.LENGTH_LONG).show();
}
Код работает нормально при регистрации отпечатка пальца. Это происходит только при регистрации FaceId. Что мне здесь не хватает?