Разблокировка по лицу или FaceId

Используя BiometricPrompt запускаю авторизацию по биометрии.

val executor = ContextCompat.getMainExecutor(requireContext())
val biometricPrompt =
    BiometricPrompt(requireActivity(), executor, object : BiometricPrompt.AuthenticationCallback() {
        override fun onAuthenticationError(errorCode: Int, errString: CharSequence) {
            super.onAuthenticationError(errorCode, errString)
        }

        override fun onAuthenticationSucceeded(result: BiometricPrompt.AuthenticationResult) {
            super.onAuthenticationSucceeded(result)
        }
    })

val promptInfo = BiometricPrompt.PromptInfo.Builder()
    .setTitle(getString(R.string.login))
    .setSubtitle("test")
    .setNegativeButtonText(getString(R.string.cancel))
    .build()

biometricPrompt.authenticate(promptInfo)

Но при этом есть возможность только авторизации по отпечатку пальца. В настройках андроида включил "Разблокировку по лицу", но эффекта это не дало. Пробовал отключить отпечаток пальца, но при этом все еще выходит диалог с авторизацией по отпечатку пальца.

Я так понимаю, у меня устройство с неполноценным FaceId?

Пробовал на устройствах:

  • Poco M3 pro
  • Xiaomi MI A3

Build тестового приложения с идентичным кодом и dependencies https://dropmefiles.com/wufqF


Ответы (0 шт):