Italian Fingerprint autenticazione biometrica su Android 14

Fulvio75

Well-Known Member
Licensed User
Ciao, ho un problema con l'autenticazione biometrica su android 14, se non inserisco #Extends: android.support.v7.app.AppCompatActivity non funziona e mi da l'errore li sotto.
Se lo inserisco mi visualizza una fastidiosissima barra in cima alla pagina con scritto MainPage, tutto ciò sulle versioni precedenti di Android non accadeva come faccio a sistemare il tutto
grazie

#AdditionalJar: androidx.biometric:biometric
#Extends: android.support.v7.app.AppCompatActivity
'discard the incorrect warning about AppCompat not being used.
#IgnoreWarnings: 32

B4X:
B4XPage_Appear
Error occurred on line: 85 (BiometricManager)
java.lang.RuntimeException: Constructor not found.
    at anywheresoftware.b4j.object.JavaObject.InitializeNewInstance(JavaObject.java:95)
    at af.software.gestionedati.biometricmanager._show(biometricmanager.java:182)
    at af.software.gestionedati.b4xmainpage$ResumableSub_Start_Authentication.resume(b4xmainpage.java:3344)
    at af.software.gestionedati.b4xmainpage._start_authentication(b4xmainpage.java:3271)
    at af.software.gestionedati.b4xmainpage$ResumableSub_Initialize_App.resume(b4xmainpage.java:776)
    at anywheresoftware.b4a.shell.DebugResumableSub$DelegatableResumableSub.resumeAsUserSub(DebugResumableSub.java:48)
    at java.lang.reflect.Method.invoke(Native Method)
    at anywheresoftware.b4a.shell.Shell.runMethod(Shell.java:732)
    at anywheresoftware.b4a.shell.Shell.raiseEventImpl(Shell.java:351)
    at anywheresoftware.b4a.shell.Shell.raiseEvent(Shell.java:255)
    at java.lang.reflect.Method.invoke(Native Method)
    at anywheresoftware.b4a.ShellBA.raiseEvent2(ShellBA.java:157)
    at anywheresoftware.b4a.BA.raiseEvent(BA.java:201)
    at anywheresoftware.b4a.shell.DebugResumableSub$DelegatableResumableSub.resume(DebugResumableSub.java:43)
    at anywheresoftware.b4a.BA.checkAndRunWaitForEvent(BA.java:275)
    at anywheresoftware.b4a.ShellBA.raiseEvent2(ShellBA.java:150)
    at anywheresoftware.b4a.BA.raiseEvent(BA.java:201)
    at anywheresoftware.b4a.keywords.Common$15.run(Common.java:1804)
    at android.os.Handler.handleCallback(Handler.java:958)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loopOnce(Looper.java:230)
    at android.os.Looper.loop(Looper.java:319)
    at android.app.ActivityThread.main(ActivityThread.java:9063)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:588)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1103)
 

Fulvio75

Well-Known Member
Licensed User
B4X:
Public Sub Show (Msg As String)
    
    Dim PromptInfoBuilder As JavaObject
    
    PromptInfoBuilder.InitializeNewInstance("androidx.biometric.BiometricPrompt$PromptInfo$Builder", Null)
    PromptInfoBuilder.RunMethod("setTitle", Array(Msg))
    PromptInfoBuilder.RunMethod("setNegativeButtonText", Array("Cancel"))
    
    Dim Ev As JavaObject
    
    Ev.InitializeNewInstance(Application.PackageName & ".biometricmanager.BiometricPromptAuthentication", Array(Me))
    
    Dim Prompt As JavaObject
    
    [B]Prompt.InitializeNewInstance("androidx.biometric.BiometricPrompt", Array(ctxt, Executor, Ev)) 'QUI VA IN ERRORE[/B]
    Prompt.RunMethod("authenticate", Array(PromptInfoBuilder.RunMethod("build", Null)))
    
End Sub
 

Fulvio75

Well-Known Member
Licensed User
Screenshot_20241125_173312.jpg
 

Fulvio75

Well-Known Member
Licensed User
E' possibile che dipenda da quanto sopra. Tra poco "studierò" meglio. Nel frattempo, invia un drone con il suddetto smartphone 😂
si è questa roba di ... #Extends: android.support.v7.app.AppCompatActivity
ma senza non funziona con android 14
 

Fulvio75

Well-Known Member
Licensed User
Ma su uno smartphone con una versione di Android precedente, lo stesso identico progetto non mostra quella barra nera?

tolgo #Extends: android.support.v7.app.AppCompatActivity funziona sugli altri android e la barra sparisce.
Con il 14 non funziona nulla se tolgo #Extends: android.support.v7.app.AppCompatActivity
 

Fulvio75

Well-Known Member
Licensed User
Riepilogando:

#AdditionalJar: androidx.biometric:biometric
#Extends: android.support.v4.app.FragmentActivity
'discard the incorrect warning about AppCompat not being used.
#IgnoreWarnings: 32

Così funziona perfettamente
 
Top