epicshaggy / capacitor-native-biometric

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Bug: IllegalArgumentException: subjectDN == null

RRGT19 opened this issue Β· comments

Bug Report

Capacitor Version

πŸ’Š   Capacitor Doctor  πŸ’Š 

Latest Dependencies:

  @capacitor/cli: 4.5.0
  @capacitor/core: 4.5.0
  @capacitor/android: 4.5.0
  @capacitor/ios: 4.5.0

Installed Dependencies:

  @capacitor/cli: 4.5.0
  @capacitor/core: 4.5.0
  @capacitor/android: 4.5.0
  @capacitor/ios: 4.5.0

[success] iOS looking great! πŸ‘Œ
[success] Android looking great! πŸ‘Œ

Platform(s)

Android

Current Behavior

On Firebase Crashlytics I have a few cases with this error:

NativeBiometric.java line 350
com.epicshaggy.biometric.NativeBiometric.getPrivateKeyEntry

Fatal Exception: java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
       at com.getcapacitor.Bridge.lambda$callPluginMethod$0$com-getcapacitor-Bridge(Bridge.java:730)
       at com.getcapacitor.Bridge$$ExternalSyntheticLambda5.run(D8$$SyntheticClass)
       at android.os.Handler.handleCallback(Handler.java:739)
       at android.os.Handler.dispatchMessage(Handler.java:95)
       at android.os.Looper.loop(Looper.java:145)
       at android.os.HandlerThread.run(HandlerThread.java:61)

Caused by java.lang.reflect.InvocationTargetException:
       at java.lang.reflect.Method.invoke(Method.java)
       at java.lang.reflect.Method.invoke(Method.java:372)
       at com.getcapacitor.PluginHandle.invoke(PluginHandle.java:125)
       at com.getcapacitor.Bridge.lambda$callPluginMethod$0$com-getcapacitor-Bridge(Bridge.java:721)
       at com.getcapacitor.Bridge$$ExternalSyntheticLambda5.run(D8$$SyntheticClass)
       at android.os.Handler.handleCallback(Handler.java:739)
       at android.os.Handler.dispatchMessage(Handler.java:95)
       at android.os.Looper.loop(Looper.java:145)
       at android.os.HandlerThread.run(HandlerThread.java:61)

Caused by java.lang.IllegalArgumentException: subjectDN == null
       at android.security.KeyPairGeneratorSpec.<init>(KeyPairGeneratorSpec.java:137)
       at android.security.KeyPairGeneratorSpec$Builder.build(KeyPairGeneratorSpec.java:482)
       at com.epicshaggy.biometric.NativeBiometric.getPrivateKeyEntry(NativeBiometric.java:350)
       at com.epicshaggy.biometric.NativeBiometric.rsaEncrypt(NativeBiometric.java:358)
       at com.epicshaggy.biometric.NativeBiometric.getAESKey(NativeBiometric.java:330)
       at com.epicshaggy.biometric.NativeBiometric.generateKey(NativeBiometric.java:301)
       at com.epicshaggy.biometric.NativeBiometric.getKey(NativeBiometric.java:310)
       at com.epicshaggy.biometric.NativeBiometric.encryptString(NativeBiometric.java:264)
       at com.epicshaggy.biometric.NativeBiometric.setCredentials(NativeBiometric.java:167)
       at java.lang.reflect.Method.invoke(Method.java)
       at java.lang.reflect.Method.invoke(Method.java:372)
       at com.getcapacitor.PluginHandle.invoke(PluginHandle.java:125)
       at com.getcapacitor.Bridge.lambda$callPluginMethod$0$com-getcapacitor-Bridge(Bridge.java:721)
       at com.getcapacitor.Bridge$$ExternalSyntheticLambda5.run(D8$$SyntheticClass)
       at android.os.Handler.handleCallback(Handler.java:739)
       at android.os.Handler.dispatchMessage(Handler.java:95)
       at android.os.Looper.loop(Looper.java:145)
       at android.os.HandlerThread.run(HandlerThread.java:61)

Android versions:

  • 5.1.1

Devices:

  • Galaxy Grand Prime

Expected Behavior

I'm not sure.

Other Technical Details

  • "capacitor-native-biometric": "^4.1.3"

Code Reproduction

I'm using:

NativeBiometric.isAvailable()

and

NativeBiometric .verifyIdentity(options)

Both without the useFallback flag. Maybe should I enable this flag? I don't know if this can solve the issue.