Closed giga89 closed 2 years ago
Ciao @giga89
è cambiato qualcosa nel LoadKeyWorker nella versione 1.1.5 rispetto alla precedente? Il mio codice per chiamarlo ora mi da un'eccezione [...] E/WM-WorkerFactory: Could not instantiate it.ministerodellasalute.verificaC19sdk.worker.LoadKeysWorker java.lang.NoSuchMethodException: it.ministerodellasalute.verificaC19sdk.worker.LoadKeysWorker. [class android.content.Context, class androidx.work.WorkerParameters]
Tale eccezione di metodo non trovato con LoadKeysWorker si riscontra quando si alzano compileSdk/targetSdk da API level 30 (Android 11/R) a 31 (Android 12/R) dell'app, che integra DGC-SDK come project, senza aver applicato anche le modifiche necessarie in :
AndroidManifest.xml dell'app = sostituzione di workmanager-init con androidx-startup per inizializzazione WorkManager
Versions app e build.gradle top level progetto = aggiornamento a versione 2.7.1 della dependency androidx.work:work-runtime-ktx + override di progetto (onde evitare conflitti/disallineamenti di dichiarazione versione tra app/moduli).
Vedasi closed issue #67 & relative indicazioni di risoluzione, che ritrovi anche - escludendo la parte relativa al CI workflow, se non ti serve/interessa - negli edit del seguente commit 14513b8
applicato alla whitelabel-app VerificaC19 - quando appunto venne portato il suo targetSdk da 30 a 31.
Nota a margine :
Avendo dato un'occhiata (veloce) alla release odierna 1.9 build 58 (integrante DGC-SDK 1.1.4) dell'app a cui stai lavorando, ti segnalo - qualora non lo sapessi già - che è stato confermato oggi che la tipologia di verifica STUDENTI non possa essere più mantenuta/inclusa nelle app/soluzioni terze, che utilizzino SDK/Librerie autorizzate ex DPCM 12/10/2021.
Solo le app ufficiali VerificaC19 iOS/Android sono autorizzate ad effettuare controlli/validazioni con tale scanmode.
Tale disposizione vale non solo per SDK/Librerie terze autorizzate (che provvederanno a disabilitare/rimuovere il supporto scanmode SCHOOL nelle loro nuove release), ma anche per l'uso del DGC/SDK Android/Kotlin da parte di app terze.
Nel tuo caso dovrai quindi semplicemente rimuovere dalla UI della prossima release l'opzione Studenti in Impostazioni \ Tipologia di Verifica.
Grazie @rawmain , gentilissimo come al solito. Non avevo trovato quell'issue che mi hai linkato probabilmente grazie alla stanchezza accumulata in giornata :) Ho risolto seguendo i tuoi consigli e il codice nell'issue da te linkato Chiudo Ti ringrazio ancora, ciao
Buonasera, è cambiato qualcosa nel LoadKeyWorker nella versione 1.1.5 rispetto alla precedente? Il mio codice per chiamarlo ora mi da un'eccezione
2022-02-14 22:01:00.821 10917-10972/com.zucchetti.AccessC19 E/WM-WorkerFactory: Could not instantiate it.ministerodellasalute.verificaC19sdk.worker.LoadKeysWorker java.lang.NoSuchMethodException: it.ministerodellasalute.verificaC19sdk.worker.LoadKeysWorker. [class android.content.Context, class androidx.work.WorkerParameters]
at java.lang.Class.getConstructor0(Class.java:2332)
at java.lang.Class.getDeclaredConstructor(Class.java:2170)
at androidx.work.WorkerFactory.createWorkerWithDefaultFallback(WorkerFactory.java:95)
at androidx.work.impl.WorkerWrapper.runWorker(WorkerWrapper.java:245)
at androidx.work.impl.WorkerWrapper.run(WorkerWrapper.java:137)
at androidx.work.impl.utils.SerialExecutor$Task.run(SerialExecutor.java:91)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:919)
2022-02-14 22:01:00.825 10917-10972/com.zucchetti.AccessC19 E/WM-WorkerWrapper: Could not create Worker it.ministerodellasalute.verificaC19sdk.worker.LoadKeysWorker
Da cosa può essere provocata? Grazie