Stay organized with collections
Save and categorize content based on your preferences.
BiometricManager.Authenticators
public
static
interface
BiometricManager.Authenticators
android.hardware.biometrics.BiometricManager.Authenticators
|
Types of authenticators, defined at a level of granularity supported by
BiometricManager
and BiometricPrompt
.
Types may combined via bitwise OR into a single integer representing multiple
authenticators (e.g. DEVICE_CREDENTIAL | BIOMETRIC_WEAK
).
Summary
Constants |
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.
|
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.
|
int |
DEVICE_CREDENTIAL
The non-biometric credential used to secure the device (i.e., PIN, pattern, or password).
|
int |
IDENTITY_CHECK
The bit is used to request for Identity Check.
|
Constants
BIOMETRIC_STRONG
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 KeyProperties.AUTH_BIOMETRIC_STRONG
during key generation.
Constant Value:
15
(0x0000000f)
BIOMETRIC_WEAK
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 BIOMETRIC_STRONG
and is defined such that
BIOMETRIC_STRONG | BIOMETRIC_WEAK == BIOMETRIC_WEAK
.
Constant Value:
255
(0x000000ff)
DEVICE_CREDENTIAL
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
BIOMETRIC_WEAK
.
This corresponds to KeyProperties.AUTH_DEVICE_CREDENTIAL
during key
generation.
Constant Value:
32768
(0x00008000)
IDENTITY_CHECK
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 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 BIOMETRIC_STRONG
sensors
will be eligible for authentication, and device credential fallback will be dropped.
Constant Value:
65536
(0x00010000)
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2025-03-13 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-03-13 UTC."],[],[],null,["# BiometricManager.Authenticators\n\nAdded in [API level 30](/guide/topics/manifest/uses-sdk-element#ApiLevels) \n\nBiometricManager.Authenticators\n===============================\n\n*** ** * ** ***\n\n[Kotlin](/reference/kotlin/android/hardware/biometrics/BiometricManager.Authenticators \"View this page in Kotlin\") \\|Java\n\n\n`\npublic\nstatic\n\n\ninterface\nBiometricManager.Authenticators\n`\n\n\n`\n\n\n`\n\n|-------------------------------------------------------------|\n| android.hardware.biometrics.BiometricManager.Authenticators |\n\n\u003cbr /\u003e\n\n*** ** * ** ***\n\nTypes of authenticators, defined at a level of granularity supported by\n[BiometricManager](/reference/android/hardware/biometrics/BiometricManager) and [BiometricPrompt](/reference/android/hardware/biometrics/BiometricPrompt).\n\nTypes may combined via bitwise OR into a single integer representing multiple\nauthenticators (e.g. `DEVICE_CREDENTIAL | BIOMETRIC_WEAK`). \n**See also:**\n\n- [BiometricManager.canAuthenticate(int)](/reference/android/hardware/biometrics/BiometricManager#canAuthenticate(int))\n- [BiometricPrompt.Builder.setAllowedAuthenticators(int)](/reference/android/hardware/biometrics/BiometricPrompt.Builder#setAllowedAuthenticators(int))\n\nSummary\n-------\n\n| ### Constants ||\n|-------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `int` | [BIOMETRIC_STRONG](/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. |\n| `int` | [BIOMETRIC_WEAK](/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. |\n| `int` | [DEVICE_CREDENTIAL](/reference/android/hardware/biometrics/BiometricManager.Authenticators#DEVICE_CREDENTIAL) The non-biometric credential used to secure the device (i.e., PIN, pattern, or password). |\n| `int` | [IDENTITY_CHECK](/reference/android/hardware/biometrics/BiometricManager.Authenticators#IDENTITY_CHECK) The bit is used to request for Identity Check. |\n\nConstants\n---------\n\n### BIOMETRIC_STRONG\n\nAdded in [API level 30](/guide/topics/manifest/uses-sdk-element#ApiLevels) \n\n```\npublic static final int BIOMETRIC_STRONG\n```\n\nAny biometric (e.g. fingerprint, iris, or face) on the device that meets or exceeds the\nrequirements for **Class 3** (formerly **Strong**), as defined\nby the Android CDD.\n\nThis corresponds to [KeyProperties.AUTH_BIOMETRIC_STRONG](/reference/android/security/keystore/KeyProperties#AUTH_BIOMETRIC_STRONG) during key generation.\n\n\u003cbr /\u003e\n\n**See also:**\n\n- [KeyGenParameterSpec.Builder](/reference/android/security/keystore/KeyGenParameterSpec.Builder)\n\nConstant Value:\n\n15\n(0x0000000f)\n\n\n### BIOMETRIC_WEAK\n\nAdded in [API level 30](/guide/topics/manifest/uses-sdk-element#ApiLevels) \n\n```\npublic static final int BIOMETRIC_WEAK\n```\n\nAny biometric (e.g. fingerprint, iris, or face) on the device that meets or exceeds the\nrequirements for **Class 2** (formerly **Weak**), as defined by\nthe Android CDD.\n\nNote that this is a superset of [BIOMETRIC_STRONG](/reference/android/hardware/biometrics/BiometricManager.Authenticators#BIOMETRIC_STRONG) and is defined such that\n`BIOMETRIC_STRONG | BIOMETRIC_WEAK == BIOMETRIC_WEAK`.\n\n\u003cbr /\u003e\n\nConstant Value:\n\n255\n(0x000000ff)\n\n\n### DEVICE_CREDENTIAL\n\nAdded in [API level 30](/guide/topics/manifest/uses-sdk-element#ApiLevels) \n\n```\npublic static final int DEVICE_CREDENTIAL\n```\n\nThe non-biometric credential used to secure the device (i.e., PIN, pattern, or password).\nThis should typically only be used in combination with a biometric auth type, such as\n[BIOMETRIC_WEAK](/reference/android/hardware/biometrics/BiometricManager.Authenticators#BIOMETRIC_WEAK).\n\nThis corresponds to [KeyProperties.AUTH_DEVICE_CREDENTIAL](/reference/android/security/keystore/KeyProperties#AUTH_DEVICE_CREDENTIAL) during key\ngeneration.\n\n\u003cbr /\u003e\n\n**See also:**\n\n- [KeyGenParameterSpec.Builder](/reference/android/security/keystore/KeyGenParameterSpec.Builder)\n\nConstant Value:\n\n32768\n(0x00008000)\n\n\n### IDENTITY_CHECK\n\nAdded in [API level 36](/guide/topics/manifest/uses-sdk-element#ApiLevels) \n\n```\npublic static final int IDENTITY_CHECK\n```\n\nThe bit is used to request for Identity Check.\n\nIdentity Check is a feature which requires class 3 biometric authentication to access\nsensitive surfaces when the device is outside trusted places.\n\nThe requirements to trigger Identity Check are as follows:\n1. User must have enabled the toggle for Identity Check in settings\n2. User must have enrollments for at least one [BIOMETRIC_STRONG](/reference/android/hardware/biometrics/BiometricManager.Authenticators#BIOMETRIC_STRONG) sensor\n3. The device is determined to be in a high risk environment, for example if it is\noutside of the user's trusted locations or fails to meet similar conditions.\n4. The Identity Check requirements bit must be true\n\nIf all the above conditions are satisfied, only [BIOMETRIC_STRONG](/reference/android/hardware/biometrics/BiometricManager.Authenticators#BIOMETRIC_STRONG) sensors\nwill be eligible for authentication, and device credential fallback will be dropped.\n\n\u003cbr /\u003e\n\nConstant Value:\n\n65536\n(0x00010000)"]]