How Do I Use Fingerprint for Android App?

Android, Android Apps

In today’s digital era, security is of utmost importance. One way to enhance the security of your Android app is by incorporating fingerprint authentication.

Fingerprint authentication provides a convenient and secure way for users to access their accounts and protect their sensitive information. In this tutorial, we will explore how you can use fingerprint for your Android app.


Before we dive into the implementation, make sure you have the following prerequisites in place:

  • An Android device running on API level 23 (Android 6.0) or higher
  • Android Studio IDE installed on your system
  • A basic understanding of Android development and Java programming language

Implementation Steps

Step 1: Add Required Permissions

To begin with, you need to add the necessary permissions in your app’s manifest file. Open the manifest file (AndroidManifest.xml) and include the following permissions:

<uses-permission android:name=”android.permission.USE_FINGERPRINT” />

This permission allows your app to use the fingerprint hardware present in the device.

Step 2: Check Fingerprint Hardware Availability

In order to provide a seamless user experience, it’s essential to check if the device has fingerprint hardware available. To do this, you can use the FingerprintManager class provided by Android.

FingerprintManager fingerprintManager = (FingerprintManager) getSystemService(Context.FINGERPRINT_SERVICE);
if (!fingerprintManager.isHardwareDetected()) {
    // Fingerprint hardware not available

If the device does not have a fingerprint sensor, you can handle it gracefully by providing an alternative authentication method.

Step 3: Create Fingerprint Authentication Callback

Next, you need to create a callback class that will handle the fingerprint authentication process. This class will implement the FingerprintManager.AuthenticationCallback interface and override its methods.

private class FingerprintAuthenticationCallback extends FingerprintManager.AuthenticationCallback {
    public void onAuthenticationSucceeded(FingerprintManager.AuthenticationResult result) {
        // Fingerprint authentication successful

    public void onAuthenticationFailed() {
        // Fingerprint authentication failed

    public void onAuthenticationError(int errorCode, CharSequence errString) {
        // Handle authentication error

Step 4: Start Fingerprint Authentication

Now it’s time to initiate the fingerprint authentication process. You can use the following code snippet to start the authentication:

FingerprintManager.CryptoObject cryptoObject = new FingerprintManager.CryptoObject(cipher);
FingerprintAuthenticationCallback callback = new FingerprintAuthenticationCallback();
fingerprintManager.authenticate(cryptoObject, null, 0, callback, null);

In this code snippet, ‘cipher’ represents the cryptographic object created using your app’s encryption logic.


In this tutorial, we have learned how to incorporate fingerprint authentication into your Android app. By following these steps, you can enhance the security of your app and provide a seamless user experience.

Remember to handle edge cases and errors gracefully to ensure a robust implementation. Happy coding!