Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

# BiometricManager.Authenticators

*** ** * ** ***

` public static interface BiometricManager.Authenticators `   
` `

|---|
| android.hardware.biometrics.BiometricManager.Authenticators |

<br />

*** ** * ** ***

Types of authenticators, defined at a level of granularity supported by `https://developer.android.com/reference/android/hardware/biometrics/BiometricManager` and `https://developer.android.com/reference/android/hardware/biometrics/BiometricPrompt`.

Types may combined via bitwise OR into a single integer representing multiple authenticators (e.g. `DEVICE_CREDENTIAL | BIOMETRIC_WEAK`).
**See also:**

- `https://developer.android.com/reference/android/hardware/biometrics/BiometricManager#canAuthenticate(int)`
- `https://developer.android.com/reference/android/hardware/biometrics/BiometricPrompt.Builder#setAllowedAuthenticators(int)`

## Summary

| ### Constants ||
|---|---|
| `int` | `https://developer.android.com/reference/android/hardware/biometrics/BiometricManager.Authenticators#BIOMETRIC_STRONG` Any biometric (e.g. fingerprint, iris, or face) on the device that meets or exceeds the requirements for **Class 3** (formerly **Strong**), as defined by the Android CDD. |
| `int` | `https://developer.android.com/reference/android/hardware/biometrics/BiometricManager.Authenticators#BIOMETRIC_WEAK` Any biometric (e.g. fingerprint, iris, or face) on the device that meets or exceeds the requirements for **Class 2** (formerly **Weak**), as defined by the Android CDD. |
| `int` | `https://developer.android.com/reference/android/hardware/biometrics/BiometricManager.Authenticators#DEVICE_CREDENTIAL` The non-biometric credential used to secure the device (i.e., PIN, pattern, or password). |
| `int` | `https://developer.android.com/reference/android/hardware/biometrics/BiometricManager.Authenticators#IDENTITY_CHECK` The bit is used to request for Identity Check. |
| `int` | `https://developer.android.com/reference/android/hardware/biometrics/BiometricManager.Authenticators#LESS_THAN_STRONG` Any biometric (e.g. fingerprint, iris, or face) on the device that falls short of the requirements for **Class 3** (formerly **Strong**), as defined by the Android CDD. |

## Constants

### BIOMETRIC_STRONG

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int BIOMETRIC_STRONG
```

Any biometric (e.g. fingerprint, iris, or face) on the device that meets or exceeds the requirements for **Class 3** (formerly **Strong**), as defined by the Android CDD.

This corresponds to `https://developer.android.com/reference/android/security/keystore/KeyProperties#AUTH_BIOMETRIC_STRONG` during key generation.

<br />

**See also:**

- `https://developer.android.com/reference/android/security/keystore/KeyGenParameterSpec.Builder`

Constant Value: 15 (0x0000000f)

### BIOMETRIC_WEAK

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int BIOMETRIC_WEAK
```

Any biometric (e.g. fingerprint, iris, or face) on the device that meets or exceeds the requirements for **Class 2** (formerly **Weak**), as defined by the Android CDD.

Note that this is a superset of `https://developer.android.com/reference/android/hardware/biometrics/BiometricManager.Authenticators#BIOMETRIC_STRONG` and is defined such that `BIOMETRIC_STRONG | BIOMETRIC_WEAK == BIOMETRIC_WEAK`.

<br />

Constant Value: 255 (0x000000ff)

### DEVICE_CREDENTIAL

Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int DEVICE_CREDENTIAL
```

The non-biometric credential used to secure the device (i.e., PIN, pattern, or password). This should typically only be used in combination with a biometric auth type, such as `https://developer.android.com/reference/android/hardware/biometrics/BiometricManager.Authenticators#BIOMETRIC_WEAK`.

This corresponds to `https://developer.android.com/reference/android/security/keystore/KeyProperties#AUTH_DEVICE_CREDENTIAL` during key generation.

<br />

**See also:**

- `https://developer.android.com/reference/android/security/keystore/KeyGenParameterSpec.Builder`

Constant Value: 32768 (0x00008000)

### IDENTITY_CHECK

Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int IDENTITY_CHECK
```

The bit is used to request for Identity Check. Identity Check is a feature which requires class 3 biometric authentication to access sensitive surfaces when the device is outside trusted places.

The requirements to trigger Identity Check are as follows: 1. User must have enabled the toggle for Identity Check in settings 2. User must have enrollments for at least one `https://developer.android.com/reference/android/hardware/biometrics/BiometricManager.Authenticators#BIOMETRIC_STRONG` sensor 3. The device is determined to be in a high risk environment, for example if it is outside of the user's trusted locations or fails to meet similar conditions. 4. The Identity Check requirements bit must be true

If all the above conditions are satisfied, only `https://developer.android.com/reference/android/hardware/biometrics/BiometricManager.Authenticators#BIOMETRIC_STRONG` sensors will be eligible for authentication, and device credential fallback will be dropped.

<br />

Constant Value: 65536 (0x00010000)

### LESS_THAN_STRONG

Added in [API level 37](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int LESS_THAN_STRONG
```

Any biometric (e.g. fingerprint, iris, or face) on the device that falls short of the requirements for **Class 3** (formerly **Strong**), as defined by the Android CDD.

For example, this includes a biometric that satisfies `https://developer.android.com/reference/android/hardware/biometrics/BiometricManager.Authenticators#BIOMETRIC_WEAK` but does not reach `https://developer.android.com/reference/android/hardware/biometrics/BiometricManager.Authenticators#BIOMETRIC_STRONG`.

This constant is intended to be used by public methods like `https://developer.android.com/reference/android/hardware/biometrics/BiometricManager#getBiometricSensorStrengths()` for obscuration.

<br />

Constant Value: 0 (0x00000000)