#android #kotlin #biometrics #android-biometric-prompt
Вопрос:
Я пытался использовать biometricManager, но такой ошибки, как добавление нового отпечатка пальца или удаление старого, нет. как с этим справиться ?
fun checkBiometricFeatureState(biometricManager: BiometricManager) : Int? {
when (biometricManager.canAuthenticate()) {
BiometricManager.BIOMETRIC_ERROR_NO_HARDWARE -> return BiometricManager.BIOMETRIC_ERROR_NO_HARDWARE
BiometricManager.BIOMETRIC_ERROR_HW_UNAVAILABLE -> return BiometricManager.BIOMETRIC_ERROR_HW_UNAVAILABLE
BiometricManager.BIOMETRIC_ERROR_NONE_ENROLLED -> return BiometricManager.BIOMETRIC_ERROR_NONE_ENROLLED
BiometricManager.BIOMETRIC_ERROR_SECURITY_UPDATE_REQUIRED -> return BiometricManager.BIOMETRIC_ERROR_SECURITY_UPDATE_REQUIRED
BiometricManager.BIOMETRIC_SUCCESS -> return BiometricManager.BIOMETRIC_SUCCESS
}
return null
}
Комментарии:
1. Ни добавление, ни удаление отпечатка пальца не является ошибкой. Кроме того, сведения о том, сколько отпечатков пальцев зарегистрировано, являются внутренними для операционной системы и оборудования-эта информация недоступна приложениям.
2. @CommonsWare Мне нужно отключить биометрическую кнопку на странице входа в систему после добавления нового отпечатка пальца или удаления старого, так как с этим можно справиться
3. Если вы используете
KeyStore
, вы можете использоватьsetInvalidatedByBiometricEnrollment()
его при настройке ключа шифрования. Я не уверен, есть ли способ обнаружить зачисления/не зачисления в целом.4. @CommonsWare да, я использую хранилище ключей, но я понятия не имею , как это работает :D, просто в общих чертах, я постараюсь справиться с этим с помощью вашего предложения, спасибо, братан, хорошего дня ^^