arielhernandezmusa / capacitor-biometric-auth

34 stars 22 forks source link

BiometricAuth.verify crashed app - Android #18

Open vitiumartis opened 3 years ago

vitiumartis commented 3 years ago

Huawei P8 lite 2017 Android version 8.0.0

I use Android device.

In my case its not working. If I call

const authResult = await BiometricAuth.verify( { reason: 'text', title: 'text', } ); the app crashed.

const isAvailable = await BiometricAuth.isAvailable(); isAvailable.has return true

E/Capacitor: Serious error executing plugin java.lang.reflect.InvocationTargetException at java.lang.reflect.Method.invoke(Native Method) at com.getcapacitor.PluginHandle.invoke(PluginHandle.java:99) at com.getcapacitor.Bridge$1.run(Bridge.java:542) at android.os.Handler.handleCallback(Handler.java:808) at android.os.Handler.dispatchMessage(Handler.java:101) at android.os.Looper.loop(Looper.java:166) at android.os.HandlerThread.run(HandlerThread.java:65) Caused by: java.lang.NoClassDefFoundError: Failed resolution of: Landroid/hardware/biometrics/BiometricPrompt$Builder; at com.ahm.capacitor.biometric.BiometricAuth.displayBiometricPrompt(BiometricAuth.java:51) at com.ahm.capacitor.biometric.BiometricAuth.verify(BiometricAuth.java:44) at java.lang.reflect.Method.invoke(Native Method) at com.getcapacitor.PluginHandle.invoke(PluginHandle.java:99) at com.getcapacitor.Bridge$1.run(Bridge.java:542) at android.os.Handler.handleCallback(Handler.java:808) at android.os.Handler.dispatchMessage(Handler.java:101) at android.os.Looper.loop(Looper.java:166) at android.os.HandlerThread.run(HandlerThread.java:65) Caused by: java.lang.ClassNotFoundException: Didn't find class "android.hardware.biometrics.BiometricPrompt$Builder" on path: DexPathList[[zip file "/data/app/de.testapp.test-4s8qI1pkoXXHAo4q-0JTAQ==/base.apk"],nativeLibraryDirectories=[/data/app/de.testapp.test-4s8qI1pkoXXHAo4q-0JTAQ==/lib/arm64, /system/lib64, /vendor/lib64, /product/lib64]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:93) at java.lang.ClassLoader.loadClass(ClassLoader.java:379) at java.lang.ClassLoader.loadClass(ClassLoader.java:312) at com.ahm.capacitor.biometric.BiometricAuth.displayBiometricPrompt(BiometricAuth.java:51) at com.ahm.capacitor.biometric.BiometricAuth.verify(BiometricAuth.java:44) at java.lang.reflect.Method.invoke(Native Method) at com.getcapacitor.PluginHandle.invoke(PluginHandle.java:99) at com.getcapacitor.Bridge$1.run(Bridge.java:542) at android.os.Handler.handleCallback(Handler.java:808) at android.os.Handler.dispatchMessage(Handler.java:101) at android.os.Looper.loop(Looper.java:166) at android.os.HandlerThread.run(HandlerThread.java:65)

Installed: "capacitor-biometric-auth": "^0.1.1"

varibles.gradle file:

ext { minSdkVersion = 23 compileSdkVersion = 30 targetSdkVersion = 30 androidxAppCompatVersion = '1.1.0' androidxCoreVersion = '1.2.0' androidxMaterialVersion = '1.1.0-rc02' androidxBrowserVersion = '1.2.0' androidxLocalbroadcastmanagerVersion = '1.0.0' androidxExifInterfaceVersion = '1.2.0' firebaseMessagingVersion = '20.1.2' playServicesLocationVersion = '17.0.0' junitVersion = '4.12' androidxJunitVersion = '1.1.1' androidxEspressoCoreVersion = '3.2.0' cordovaAndroidVersion = '7.0.0' }

Ionic info: Ionic:

Ionic CLI : 6.13.1 (/usr/local/lib/node_modules/@ionic/cli) Ionic Framework : @ionic/angular 5.4.1 @angular-devkit/build-angular : 0.1000.8 @angular-devkit/schematics : 10.0.8 @angular/cli : 10.0.8 @ionic/angular-toolkit : 2.3.3

Capacitor:

Capacitor CLI : 2.4.6 @capacitor/core : 2.4.6

Cordova:

Cordova CLI : 10.0.0 Cordova Platforms : not available Cordova Plugins : not available

Utility:

cordova-res (update available: 0.15.3) : 0.15.2 native-run : 1.3.0

System:

Android SDK Tools : 26.1.1 (/mnt/Mango/sdk/android) NodeJS : v12.18.3 (/usr/local/bin/node) npm : 7.7.5 OS : Linux 5.4