解决--No instance field forceOldAnimationCode of type Z in class ImageDecodeOptions

在使用Fresco加载GIF动图时遇到错误,原因是forceOldAnimationCode字段被移除。解决方案是统一所有Fresco相关库的版本。

项目最近有个需求,需要增加动图功能。目前支持动图的图片加载框架一个是Glide,一个是Fresco。动手写Demo时,发现用Fresco加载Gif图片时报了下面的错。在官方issue上面找到了这个问题的原因,原来是我使用的Fresco版本问题。forceOldAnimationCode这个属性已经被移除了,所以找不到了。
解决办法:确保引入的所有Fresco相关的库的版本号都是一样的。
附上官方issue链接:
https://github.com/facebook/fresco/issues/1660

7-18 15:11:20.297 14207-14358/com.example.huanglin.dynamicimagedemo E/AndroidRuntime: FATAL EXCEPTION: Thread-24794
Process: com.example.huanglin.dynamicimagedemo, PID: 14207
java.lang.NoSuchFieldError: No instance field forceOldAnimationCode of type Z in class Lcom/facebook/imagepipeline/common/ImageDecodeOptions; or its superclasses (declaration of ‘com.facebook.imagepipeline.common.ImageDecodeOptions’ appears in/data/app/com.example.huanglin.dynamicimagedemo-1/base.apk)
at com.facebook.imagepipeline.animated.factory.AnimatedImageFactoryImpl.decodeGif(AnimatedImageFactoryImpl.java:84)
at com.facebook.imagepipeline.decoder.DefaultImageDecoder.decodeGif(DefaultImageDecoder.java:145)
at com.facebook.imagepipeline.decoder.DefaultImageDecoder 1.decode(DefaultImageDecoder.java:65)atcom.facebook.imagepipeline.decoder.DefaultImageDecoder.decode(DefaultImageDecoder.java:126)atcom.facebook.imagepipeline.producers.DecodeProducer ProgressiveDecoder.doDecode(DecodeProducer.java:240)
at com.facebook.imagepipeline.producers.DecodeProducer ProgressiveDecoder.access 200(DecodeProducer.java:112)
at com.facebook.imagepipeline.producers.DecodeProducer ProgressiveDecoder 1.run(DecodeProducer.java:145)
at com.facebook.imagepipeline.producers.JobScheduler.doJob(JobScheduler.java:207)
at com.facebook.imagepipeline.producers.JobScheduler.access 000(JobScheduler.java:27)atcom.facebook.imagepipeline.producers.JobScheduler 1.run(JobScheduler.java:78)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
at java.util.concurrent.ThreadPoolExecutor Worker.run(ThreadPoolExecutor.java:588)atcom.facebook.imagepipeline.core.PriorityThreadFactory 1.run(PriorityThreadFactory.java:43)
at java.lang.Thread.run(Thread.java:833)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值