public enum BiometricType

  1. Object
  2. Enum<BiometricType>
  3. BiometricType

ImplementsComparable<BiometricType>

Enumerates the biometric authentication modalities that may be available on a device. Returned from Biometrics.getAvailableBiometrics().

The set returned at runtime depends on the platform and the user’s enrolled credentials – e.g. an iPhone with Face ID enrolled returns [FACE]; an Android Pixel with a fingerprint and a face enrolled returns [FINGERPRINT, FACE]. Use the list to drive UI affordances (icon, prompt copy) but never to gate the actual authenticate() call: always rely on Biometrics.canAuthenticate() for that decision.

Enum constants

FINGERPRINTFingerprint sensor (iOS Touch ID, Android FEATURE_FINGERPRINT).
FACEFace recognition (iOS Face ID, Android FEATURE_FACE).
IRISIris recognition (Android FEATURE_IRIS).
STRONGAndroid class-3 / “strong” authenticator tier.
WEAKAndroid class-2 / “weak” authenticator tier.

Methods

public static BiometricType[] values()
public static BiometricType valueOf(String name)

Inherited methods

Enum constant details

FINGERPRINT

FINGERPRINT
Fingerprint sensor (iOS Touch ID, Android FEATURE_FINGERPRINT). Populated on both platforms when the device has fingerprint hardware AND at least one fingerprint is enrolled.

FACE

FACE
Face recognition (iOS Face ID, Android FEATURE_FACE). Populated on both platforms; on Android 9-10 the OS does not expose face enrolment via the BiometricPrompt API even on devices that have it, so this value only appears on Android API 29+.

IRIS

IRIS
Iris recognition (Android FEATURE_IRIS). Used by a handful of Samsung devices and is not exposed on iOS. Practically rare in 2026 – code that targets it should still treat the absence as the expected case.

STRONG

STRONG

Android class-3 / “strong” authenticator tier. Indicates the device’s available biometric meets Android’s stricter cryptographic requirements (false-acceptance rate < 1/100,000) and can therefore gate Keystore-backed keys created with setUserAuthenticationRequired

WEAK

WEAK
Android class-2 / “weak” authenticator tier. Indicates a biometric whose false-acceptance rate is between 1/10,000 and 1/100,000 (typically older fingerprint sensors). It can authenticate the user for UI flows but is NOT permitted to unlock Keystore-bound keys, so weak-only devices cannot use SecureStorage. Populated only on Android API 30+; not returned on iOS.

Method details

values

public static BiometricType[] values()

valueOf

public static BiometricType valueOf(String name)