Stay organized with collections
Save and categorize content based on your preferences.
Authenticators
interface 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 |
static Int |
Any biometric (e.g. fingerprint, iris, or face) on the device that meets or exceeds the requirements for
|
static Int |
Any biometric (e.g. fingerprint, iris, or face) on the device that meets or exceeds the requirements for
|
static Int |
The non-biometric credential used to secure the device (i.e., PIN, pattern, or password).
|
static Int |
The bit is used to request for Identity Check.
|
Constants
BIOMETRIC_STRONG
static val BIOMETRIC_STRONG: Int
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.
Value: 15
BIOMETRIC_WEAK
static val BIOMETRIC_WEAK: Int
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
.
Value: 255
DEVICE_CREDENTIAL
static val DEVICE_CREDENTIAL: Int
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.
Value: 32768
IDENTITY_CHECK
static val IDENTITY_CHECK: Int
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.
Value: 65536
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.
[null,null,["Last updated 2025-03-13 UTC."],[],[],null,["# BiometricManager.Authenticators\n\nAdded in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)\n\nAuthenticators\n==============\n\n*** ** * ** ***\n\nKotlin \\|[Java](/reference/android/hardware/biometrics/BiometricManager.Authenticators \"View this page in Java\") \n\n```\ninterface Authenticators\n```\n\n|------------------------------------------------------------------|\n| [android.hardware.biometrics.BiometricManager.Authenticators](#) |\n\nTypes of authenticators, defined at a level of granularity supported by [BiometricManager](/reference/kotlin/android/hardware/biometrics/BiometricManager) and [BiometricPrompt](/reference/kotlin/android/hardware/biometrics/BiometricPrompt).\n\nTypes may combined via bitwise OR into a single integer representing multiple authenticators (e.g. `DEVICE_CREDENTIAL | BIOMETRIC_WEAK`).\n\nSummary\n-------\n\n| Constants ||\n|-----------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------|\n| static [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | [BIOMETRIC_STRONG](#BIOMETRIC_STRONG:kotlin.Int) Any biometric (e.g. fingerprint, iris, or face) on the device that meets or exceeds the requirements for |\n| static [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | [BIOMETRIC_WEAK](#BIOMETRIC_WEAK:kotlin.Int) Any biometric (e.g. fingerprint, iris, or face) on the device that meets or exceeds the requirements for |\n| static [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | [DEVICE_CREDENTIAL](#DEVICE_CREDENTIAL:kotlin.Int) The non-biometric credential used to secure the device (i.e., PIN, pattern, or password). |\n| static [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | [IDENTITY_CHECK](#IDENTITY_CHECK:kotlin.Int) The bit is used to request for Identity Check. |\n\nConstants\n---------\n\n### BIOMETRIC_STRONG\n\nAdded in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels) \n\n```\nstatic val BIOMETRIC_STRONG: Int\n```\n\nAny 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\nThis corresponds to [KeyProperties.AUTH_BIOMETRIC_STRONG](../../security/keystore/KeyProperties.html#AUTH_BIOMETRIC_STRONG:kotlin.Int) during key generation. \n\n Value: 15\n\n**See Also**\n\n- [android.security.keystore.KeyGenParameterSpec.Builder](../../security/keystore/KeyGenParameterSpec.Builder.html#) \n\n### BIOMETRIC_WEAK\n\nAdded in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels) \n\n```\nstatic val BIOMETRIC_WEAK: Int\n```\n\nAny 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\nNote that this is a superset of [BIOMETRIC_STRONG](#BIOMETRIC_STRONG:kotlin.Int) and is defined such that `BIOMETRIC_STRONG | BIOMETRIC_WEAK == BIOMETRIC_WEAK`. \n\n Value: 255\n\n### DEVICE_CREDENTIAL\n\nAdded in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels) \n\n```\nstatic val DEVICE_CREDENTIAL: Int\n```\n\nThe 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](#BIOMETRIC_WEAK:kotlin.Int).\n\nThis corresponds to [KeyProperties.AUTH_DEVICE_CREDENTIAL](../../security/keystore/KeyProperties.html#AUTH_DEVICE_CREDENTIAL:kotlin.Int) during key generation. \n\n Value: 32768\n\n**See Also**\n\n- [android.security.keystore.KeyGenParameterSpec.Builder](../../security/keystore/KeyGenParameterSpec.Builder.html#) \n\n### IDENTITY_CHECK\n\nAdded in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels) \n\n```\nstatic val IDENTITY_CHECK: Int\n```\n\nThe 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.\n\nThe 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](#BIOMETRIC_STRONG:kotlin.Int) 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\n\nIf all the above conditions are satisfied, only [BIOMETRIC_STRONG](#BIOMETRIC_STRONG:kotlin.Int) sensors will be eligible for authentication, and device credential fallback will be dropped. \n\n Value: 65536"]]