这个库在 1.9.0 上运行良好。
我更新到 2.0.0 并收到此错误。
我降级到 1.9.0 甚至用 1.13.0 测试过。 工作得很好。
所以2.0.0存在一些问题,在这条线上应用程序崩溃了
Fresco.initialize(this);
想要查询更多的信息。 我也尝试过这些没有用的解决方案。
implementation 'com.android.support:support-compat:28.0.0'
在 gradle.properties 中添加这一行也不起作用。
android.enableJetifier = false
具有以下日志输出。 谢谢
--------- 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
2.0 版需要 AndroidX 支持库。 如果您的应用仍在使用旧版支持库,请在升级之前使用 1.14.2。 我们将很快发布 2.0.0 的变更日志。
谢谢@oprisnik。 迁移到 AndroidX 支持库有效。 问题解决了 :)
惊人的。 我正在处理变更日志,应该很快就会可用。 对不起:)
变更日志现已可用: https :
对于非 AndroidX 版本,请继续使用 v1.13.0
大家好,
我最近将我的 fresco 版本从 1.9.0 迁移到 2.0.0,我的应用程序在 android P 上没有 Android X 支持库,所以我面临着同样的问题,迁移到 android X 支持库就像一个魅力,但是如果由于某种原因你不能移动到 Android X 使用 v1.13.0 它工作正常,我尝试使用 v1.14.2,就像@oprisnik说的那样,由于某种原因它对我不起作用。
希望这会帮助某人:)
implementation 'com.facebook.fresco:fresco:1.13.0'
implementation 'com.facebook.fresco:animated-gif:1.13.0'
变更日志现已可用: https :
对于非 AndroidX 版本,请继续使用 v1.14.2
使用 v1.14.2 还是有问题
变更日志现已可用: https :
对于非 AndroidX 版本,请继续使用 v1.14.2使用 v1.14.2 还是有问题
使用 v1.13.0 修复了我的问题
2.0 版需要 AndroidX 支持库。 如果您的应用仍在使用旧版支持库,请在升级之前使用 1.14.2。 我们将很快发布 2.0.0 的变更日志。
我已经将版本降级到 1.14.2,但是这个错误仍然发生。
@iamsdk您是否尝试过 v1.13.0 应该可以工作,如果您已经尝试过,请检查我上面的评论,只需忽略https://github.com/facebook/fresco/issues/2365#issuecomment -510322092。
@iamsdk您尝试过 v1.13.0 吗,它应该可以工作,如果您已经尝试过,请查看我上面的评论,请忽略#2365 (comment) 。
是的,我尝试了 v1.13.0,但仍然无效,所以我将项目合并到 androidx,现在效果很好。
@iamsdk您尝试过 v1.13.0 吗,它应该可以工作,如果您已经尝试过,请查看我上面的评论,请忽略#2365 (comment) 。
谢谢你的帮助。
最有用的评论
大家好,
我最近将我的 fresco 版本从 1.9.0 迁移到 2.0.0,我的应用程序在 android P 上没有 Android X 支持库,所以我面临着同样的问题,迁移到 android X 支持库就像一个魅力,但是如果由于某种原因你不能移动到 Android X 使用 v1.13.0 它工作正常,我尝试使用 v1.14.2,就像@oprisnik说的那样,由于某种原因它对我不起作用。
希望这会帮助某人:)
implementation 'com.facebook.fresco:fresco:1.13.0'
implementation 'com.facebook.fresco:animated-gif:1.13.0'