Ich habe versucht, die Abhängigkeit zu aktualisieren, aber es hat nicht funktioniert.
2019-10-29 12:01:07.723 21430-21430/com.johnny.john.bakingapp E/AndroidRuntime: FATAL EXCEPTION: main
Prozess: com.johnny.john.bakingapp, PID: 21430
java.lang.RuntimeException: Anbieter com.squareup.picasso.PicassoProvider konnte nicht abgerufen werden: java.lang.ClassNotFoundException: Klasse „com.squareup.picasso.PicassoProvider“ nicht gefunden im Pfad: DexPathList[[Zip-Datei „/data/ app/com.johnny.john.bakingapp-Hv0j5sXQnQA3WUTrON11KQ==/base.apk"],nativeLibraryDirectories=[/data/app/com.johnny.john.bakingapp-Hv0j5sXQnQA3WUTrON11KQ==/lib/x86, /system/lib, / Anbieter/Bibliothek]]
bei android.app.ActivityThread.installProvider (ActivityThread.java:6288)
bei android.app.ActivityThread.installContentProviders (ActivityThread.java:5851)
bei android.app.ActivityThread.handleBindApplication (ActivityThread.java:5772)
bei android.app.ActivityThread.-wrap1 (Unbekannte Quelle: 0)
bei android.app.ActivityThread$H.handleMessage(ActivityThread.java:1661)
bei android.os.Handler.dispatchMessage (Handler.java:105)
bei android.os.Looper.loop(Looper.java:164)
bei android.app.ActivityThread.main (ActivityThread.java:6541)
bei java.lang.reflect.Method.invoke (native Methode)
bei com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
bei com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)
Verursacht durch: java.lang.ClassNotFoundException: Klasse „com.squareup.picasso.PicassoProvider“ nicht gefunden im Pfad: DexPathList[[Zip-Datei „/data/app/com.johnny.john.bakingapp-Hv0j5sXQnQA3WUTrON11KQ==/base .apk"],nativeLibraryDirectories=[/data/app/com.johnny.john.bakingapp-Hv0j5sXQnQA3WUTrON11KQ==/lib/x86, /system/lib, /vendor/lib]]
bei dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:93)
bei java.lang.ClassLoader.loadClass (ClassLoader.java:379)
bei java.lang.ClassLoader.loadClass (ClassLoader.java:312)
PicassoProvider wurde zugunsten der Erstellung und Verwaltung Ihrer eigenen Picasso-Instanzen mit manueller oder Framework-basierter DI entfernt.
Ich habe nichts verstanden, was du gesagt hast. Wie löse ich dieses Problem?
PicassoProvider wurde hier entfernt: https://github.com/square/picasso/pull/2057
Erstellen Sie stattdessen Ihr eigenes Picasso-Objekt und geben Sie es bei Bedarf weiter.
Ich bin auf denselben Fehler gestoßen und bin auch hierher gekommen.
2020-06-29 11:15:23.512 25599-25599/com.myactionreplay.rlpitchside E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.myactionreplay.rlpitchside, PID: 25599
java.lang.RuntimeException: Unable to get provider com.squareup.picasso.PicassoProvider: java.lang.ClassNotFoundException: Didn't find class "com.squareup.picasso.PicassoProvider" on path: DexPathList[[zip file "/data/app/com.myactionreplay.rlpitchside-xxTE8QNlI0Yuy3q8DJx4SQ==/base.apk"],nativeLibraryDirectories=[/data/app/com.myactionreplay.rlpitchside-xxTE8QNlI0Yuy3q8DJx4SQ==/lib/arm64, /system/lib64, /system/vendor/lib64]]
at android.app.ActivityThread.installProvider(ActivityThread.java:6581)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:6133)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6043)
at android.app.ActivityThread.-wrap1(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1764)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6944)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.squareup.picasso.PicassoProvider" on path: DexPathList[[zip file "/data/app/com.myactionreplay.rlpitchside-xxTE8QNlI0Yuy3q8DJx4SQ==/base.apk"],nativeLibraryDirectories=[/data/app/com.myactionreplay.rlpitchside-xxTE8QNlI0Yuy3q8DJx4SQ==/lib/arm64, /system/lib64, /system/vendor/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 android.app.ActivityThread.installProvider(ActivityThread.java:6566)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:6133)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6043)
at android.app.ActivityThread.-wrap1(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1764)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6944)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
Suppressed: java.io.IOException: Failed to open dex files from /data/app/com.myactionreplay.rlpitchside-xxTE8QNlI0Yuy3q8DJx4SQ==/base.apk because: Failure to verify dex file '/data/app/com.myactionreplay.rlpitchside-xxTE8QNlI0Yuy3q8DJx4SQ==/base.apk': Bad method handle type 7
at dalvik.system.DexFile.openDexFileNative(Native Method)
at dalvik.system.DexFile.openDexFile(DexFile.java:353)
at dalvik.system.DexFile.<init>(DexFile.java:100)
at dalvik.system.DexFile.<init>(DexFile.java:74)
at dalvik.system.DexPathList.loadDexFile(DexPathList.java:374)
at dalvik.system.DexPathList.makeDexElements(DexPathList.java:337)
at dalvik.system.DexPathList.<init>(DexPathList.java:157)
at dalvik.system.BaseDexClassLoader.<init>(BaseDexClassLoader.java:65)
at dalvik.system.PathClassLoader.<init>(PathClassLoader.java:64)
at com.android.internal.os.PathClassLoaderFactory.createClassLoader(PathClassLoaderFactory.java:43)
at android.app.ApplicationLoaders.getClassLoader(ApplicationLoaders.java:69)
at android.app.ApplicationLoaders.getClassLoader(ApplicationLoaders.java:36)
at android.app.LoadedApk.createOrUpdateClassLoaderLocked(LoadedApk.java:678)
at android.app.LoadedApk.getClassLoader(LoadedApk.java:711)
at android.app.LoadedApk.getResources(LoadedApk.java:944)
at android.app.ContextImpl.createAppContext(ContextImpl.java:2303)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5943)
... 8 more
Das eigentliche Problem ist Bad method handle type 7
. Dies wird durch die Verwendung einer Methode verursacht, die ein Aufrufer für eine direkte (spezielle) Methode ist. Dies war ein Fehler in meiner App, indem ich Picasso 2.71828 mit Retrofit 2.9.0 verwendete, aber meiner build.gradle-Datei keine Java 8-Kompilierungsoptionen hinzufügte. Retrofit requires at minimum Java 8+ or Android API 21+.
(https://square.github.io/retrofit/).
Dies hat es für mich behoben.
android {
....
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
Hilfreichster Kommentar
Ich bin auf denselben Fehler gestoßen und bin auch hierher gekommen.
Das eigentliche Problem ist
Bad method handle type 7
. Dies wird durch die Verwendung einer Methode verursacht, die ein Aufrufer für eine direkte (spezielle) Methode ist. Dies war ein Fehler in meiner App, indem ich Picasso 2.71828 mit Retrofit 2.9.0 verwendete, aber meiner build.gradle-Datei keine Java 8-Kompilierungsoptionen hinzufügte.Retrofit requires at minimum Java 8+ or Android API 21+.
(https://square.github.io/retrofit/).Dies hat es für mich behoben.