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.