8

Can we use the FingerprintManager in Android M (API 22) to identify (along with authorize) the user?

For example, there are two finger prints registered in the device, one for user A and one for user B. Does the API provide support to detect which user, A or B, just logged in?

Udit
  • 1,037
  • 6
  • 11
  • did you find an answer by yourself? is it supported? as I see that in [API 23 a new feature has been added](https://developer.android.com/about/versions/marshmallow/android-6.0.html#fingerprint-authentication) – ddb Aug 31 '16 at 10:54
  • did you find any solution ? – Dhaval Jivani Aug 24 '17 at 09:19

1 Answers1

3

No. In fact, the Android Compatibility Definition for Android 6.0 states in the Fingerprint section (7.3.10):

MUST NOT enable 3rd-party applications to distinguish between individual fingerprints.

Therefore while you could write an app that uses the fingerprint as a mechanism to authenticate the user, any registered fingerprint associated with the current user account could be used.

Android Fingerprint method does not provide fingerprint name or Any unique identity. it treated each registered fingerprint equally and just authenticate only. (valid user or invalid user that's it)

Storage The fingerprints are tied to the device (from the Nexus FAQ):

Your fingerprint data is stored securely and never leaves your device. Your data is not shared with Google or any apps on your device.

Therefore there is no way for an app to access the fingerprint data to be able to save it or use across the devices.

Suggestion : To distinguish multiple users or devices, you should use external fingureprint scanner. There's some external fingerprint scanners compatible with Android Platform and with SDK for Android. These SDKs allow to enroll and verify multiple users.

Rakesh Soni
  • 10,135
  • 5
  • 44
  • 51