2

My production device is running Android 5.0, but it has a biometric reader that is necessary for device use. However, it seems Android's Fingerprint API only supports 6.0 and later. I got my fingerprint reader to work on my phone but I have no idea how to tell Android that my production device does indeed have a biometric reader.

I get an error on getActivity().getSystemService(FINGERPRINT_SERVICE)

Michael Kemp
  • 300
  • 2
  • 17
  • what is the model of your device? – Code-Apprentice Mar 17 '17 at 15:19
  • My device is a punch-in clock specific to my company, running android 5.0.2. – Michael Kemp Mar 17 '17 at 15:24
  • I assume that other apps (perhaps provided by the manufacturer) use the fingerprint reader, correct? Are you able to contact the manufacturer to get more information? Maybe they provide a 3rd-party API. – Code-Apprentice Mar 17 '17 at 15:26
  • Well that's just it. We ARE the manufacturer. Now I need to get the hardware to respond to Android code, but it seems we're going to have to do some Linux tweaks. I was hoping there was an android-specific solution. – Michael Kemp Mar 17 '17 at 16:10
  • 1
    The fingerprint API was added in API23/Android6 hence you can upgrade the OS to Android 6 and implement the necessary backend API or define a custom non-standard API for Android 5. As you are the manufacturer you have to implement (or backport) everything that is missing. – Robert Mar 17 '17 at 16:44
  • I guess you are left with `try-catch` approach. If you end up in catch block, that would mean device lacks in fingerprint reader. – azizbekian Mar 17 '17 at 16:47
  • @azizbekian this only means the API is unable to detect the fingerprint reader which is not the same as lacking one. – Code-Apprentice Mar 17 '17 at 18:17
  • @MichaelKemp my suggestion is the same as Robert's: upgrade the Android version or implement your own API, most likely using the NDK so that you can talk directly to the hardware. – Code-Apprentice Mar 17 '17 at 18:19

0 Answers0