Cette bibliothèque fonctionnait bien avec la 1.9.0.
J'ai mis à jour vers 2.0.0 et j'ai eu cette erreur.
J'ai rétrogradé à 1.9.0 ou même testé avec 1.13.0. A bien fonctionné.
Il y a donc un problème avec la 2.0.0 qui sur cette ligne, l'application s'est écrasée
Fresco.initialize(this);
Pour plus d'informations. J'ai également essayé ces solutions qui n'ont pas fonctionné.
implementation 'com.android.support:support-compat:28.0.0'
L'ajout de cette ligne dans gradle.properties n'a pas non plus fonctionné.
android.enableJetifier = false
avec la sortie des journaux suivants. Merci
--------- beginning of crash
06-30 12:16:38.778 5360-5360/? E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.my.app, PID: 5360
java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/core/util/Pools$SynchronizedPool;
at com.facebook.imagepipeline.platform.PlatformDecoderFactory.buildPlatformDecoder(PlatformDecoderFactory.java:34)
at com.facebook.imagepipeline.core.ImagePipelineFactory.getPlatformDecoder(ImagePipelineFactory.java:304)
at com.facebook.imagepipeline.core.ImagePipelineFactory.getPlatformBitmapFactory(ImagePipelineFactory.java:296)
at com.facebook.imagepipeline.core.ImagePipelineFactory.getAnimatedFactory(ImagePipelineFactory.java:159)
at com.facebook.imagepipeline.core.ImagePipelineFactory.getImageDecoder(ImagePipelineFactory.java:219)
at com.facebook.imagepipeline.core.ImagePipelineFactory.getProducerFactory(ImagePipelineFactory.java:319)
at com.facebook.imagepipeline.core.ImagePipelineFactory.getProducerSequenceFactory(ImagePipelineFactory.java:350)
at com.facebook.imagepipeline.core.ImagePipelineFactory.getImagePipeline(ImagePipelineFactory.java:276)
at com.facebook.drawee.backends.pipeline.PipelineDraweeControllerBuilderSupplier.<init>(PipelineDraweeControllerBuilderSupplier.java:53)
at com.facebook.drawee.backends.pipeline.PipelineDraweeControllerBuilderSupplier.<init>(PipelineDraweeControllerBuilderSupplier.java:44)
at com.facebook.drawee.backends.pipeline.PipelineDraweeControllerBuilderSupplier.<init>(PipelineDraweeControllerBuilderSupplier.java:37)
at com.facebook.drawee.backends.pipeline.Fresco.initializeDrawee(Fresco.java:96)
at com.facebook.drawee.backends.pipeline.Fresco.initialize(Fresco.java:85)
at com.facebook.drawee.backends.pipeline.Fresco.initialize(Fresco.java:38)
at com.my.app.activities.MainActivity.onCreate(MainActivity.java:77)
at android.app.Activity.performCreate(Activity.java:5990)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1106)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2278)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387)
at android.app.ActivityThread.access$800(ActivityThread.java:151)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5254)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
Caused by: java.lang.ClassNotFoundException: Didn't find class "androidx.core.util.Pools$SynchronizedPool" on path: DexPathList[[zip file "/data/app/com.my.app-2/base.apk"],nativeLibraryDirectories=[/data/app/com.my.app-2/lib/x86, /vendor/lib, /system/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
at com.facebook.imagepipeline.platform.PlatformDecoderFactory.buildPlatformDecoder(PlatformDecoderFactory.java:34)
at com.facebook.imagepipeline.core.ImagePipelineFactory.getPlatformDecoder(ImagePipelineFactory.java:304)
at com.facebook.imagepipeline.core.ImagePipelineFactory.getPlatformBitmapFactory(ImagePipelineFactory.java:296)
at com.facebook.imagepipeline.core.ImagePipelineFactory.getAnimatedFactory(ImagePipelineFactory.java:159)
at com.facebook.imagepipeline.core.ImagePipelineFactory.getImageDecoder(ImagePipelineFactory.java:219)
at com.facebook.imagepipeline.core.ImagePipelineFactory.getProducerFactory(ImagePipelineFactory.java:319)
at com.facebook.imagepipeline.core.ImagePipelineFactory.getProducerSequenceFactory(ImagePipelineFactory.java:350)
at com.facebook.imagepipeline.core.ImagePipelineFactory.getImagePipeline(ImagePipelineFactory.java:276)
at com.facebook.drawee.backends.pipeline.PipelineDraweeControllerBuilderSupplier.<init>(PipelineDraweeControllerBuilderSupplier.java:53)
at com.facebook.drawee.backends.pipeline.PipelineDraweeControllerBuilderSupplier.<init>(PipelineDraweeControllerBuilderSupplier.java:44)
at com.facebook.drawee.backends.pipeline.PipelineDraweeControllerBuilderSupplier.<init>(PipelineDraweeControllerBuilderSupplier.java:37)
at com.facebook.drawee.backends.pipeline.Fresco.initializeDrawee(Fresco.java:96)
at com.facebook.drawee.backends.pipeline.Fresco.initialize(Fresco.java:85)
at com.facebook.drawee.backends.pipeline.Fresco.initialize(Fresco.java:38)
at com.my.app.activities.MainActivity.onCreate(MainActivity.java:77)
at android.app.Activity.performCreate(Activity.java:5990)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1106)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2278)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387)
at android.app.ActivityThread.access$800(ActivityThread.java:151)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5254)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
Suppressed: java.lang.ClassNotFoundException: androidx.core.util.Pools$SynchronizedPool
at java.lang.Class.classForName(Native Method)
at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
... 29 more
Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available
La version 2.0 nécessite des bibliothèques de prise en charge d'AndroidX. Si votre application utilise toujours les bibliothèques de support héritées, veuillez utiliser 1.14.2 jusqu'à ce que vous ayez effectué la mise à niveau. Nous publierons bientôt le journal des modifications pour la 2.0.0.
Merci @oprisnik. La migration vers les bibliothèques de support AndroidX a fonctionné. Problème résolu :)
Impressionnant. Je travaille sur le changelog, devrait être disponible bientôt. Désolé :)
Le changelog est maintenant disponible : https://github.com/facebook/fresco/releases/tag/v2.0.0
Pour les versions non AndroidX, veuillez continuer à utiliser la v1.13.0
Salut les gars,
J'ai récemment migré ma version de fresque de 1.9.0 à 2.0.0, mon application est sur Android P n'a pas de bibliothèques de support Android X, donc je faisais face au même problème, la migration vers les bibliothèques de support Android X fonctionne comme un charme, mais si, pour une raison quelconque, vous ne pouvez pas passer à Android X, utilisez la v1.13.0, cela fonctionne bien, j'ai essayé avec la v1.14.2 comme l' a dit
J'espère que cela aidera quelqu'un :)
implementation 'com.facebook.fresco:fresco:1.13.0'
implementation 'com.facebook.fresco:animated-gif:1.13.0'
Le changelog est maintenant disponible : https://github.com/facebook/fresco/releases/tag/v2.0.0
Pour les versions non AndroidX, veuillez continuer à utiliser la v1.14.2
L'utilisation de la v1.14.2 pose toujours problème
Le changelog est maintenant disponible : https://github.com/facebook/fresco/releases/tag/v2.0.0
Pour les versions non AndroidX, veuillez continuer à utiliser la v1.14.2L'utilisation de la v1.14.2 pose toujours problème
utiliser v1.13.0 a résolu mon problème
La version 2.0 nécessite des bibliothèques de prise en charge d'AndroidX. Si votre application utilise toujours les bibliothèques de support héritées, veuillez utiliser 1.14.2 jusqu'à ce que vous ayez effectué la mise à niveau. Nous publierons bientôt le journal des modifications pour la 2.0.0.
J'ai rétrogradé la version à 1.14.2, mais cette erreur se produisait toujours.
@iamsdk avez-vous essayé la v1.13.0, cela devrait fonctionner, vérifiez mon commentaire ci-dessus si vous avez déjà essayé cela, ignorez simplement https://github.com/facebook/fresco/issues/2365#issuecomment -510322092.
@iamsdk avez-vous essayé la v1.13.0, cela devrait fonctionner, vérifiez mon commentaire ci-dessus si vous avez déjà essayé cela, ignorez simplement #2365 (commentaire) .
Oui, j'ai essayé la v1.13.0 et cela ne fonctionne toujours pas, j'ai donc fusionné le projet avec Androidx et cela fonctionne bien maintenant.
@iamsdk avez-vous essayé la v1.13.0, cela devrait fonctionner, vérifiez mon commentaire ci-dessus si vous avez déjà essayé cela, ignorez simplement #2365 (commentaire) .
Merci de votre aide.
Commentaire le plus utile
Salut les gars,
J'ai récemment migré ma version de fresque de 1.9.0 à 2.0.0, mon application est sur Android P n'a pas de bibliothèques de support Android X, donc je faisais face au même problème, la migration vers les bibliothèques de support Android X fonctionne comme un charme, mais si, pour une raison quelconque, vous ne pouvez pas passer à Android X, utilisez la v1.13.0, cela fonctionne bien, j'ai essayé avec la v1.14.2 comme l' a dit
J'espère que cela aidera quelqu'un :)
implementation 'com.facebook.fresco:fresco:1.13.0'
implementation 'com.facebook.fresco:animated-gif:1.13.0'