java.lang.noSuchMethod Ошибка: Нет статического метода проверки аргумента(Z)V в классе Lcom/facebook/общие/внутренние/Предварительные условия;

#android #react-native

Вопрос:

Недавно я обновил свое приложение react-native с версии react-native v0.61.2 до версии v0.64.2, я следовал руководству по миграции и заставил свое приложение работать, оно работает на 100% нормально, если я войду в систему как поставщик услуг, но когда я войду в систему как клиент, приложение немедленно вылетает. Разница между этими двумя экранами заключается в том, что на экране клиента отображается множество значков в формате png. Когда я открываю экран клиента, я получаю фатальное исключение.

 2021-06-07 12:53:38.881 7766-7904/com.{AppName} E/AndroidRuntime: FATAL EXCEPTION: FrescoDecodeExecutor-1
Process: com.{AppName}, PID: 7766
java.lang.NoSuchMethodError: No static method checkArgument(Z)V in class Lcom/facebook/common/internal/Preconditions; or its super classes (declaration of 'com.facebook.common.internal.Preconditions' appears in /data/app/~~CDeqK_xh4P5FAJduOzl8IA==/com.{AppName}-_9Bm8b_wh9Am789DNU9eUw==/base.apk)
    at com.facebook.animated.gif.GifImage.create(GifImage.java:78)
    at com.facebook.animated.gif.GifImage.decode(GifImage.java:84)
    at com.facebook.imagepipeline.animated.factory.AnimatedImageFactoryImpl.decodeGif(AnimatedImageFactoryImpl.java:88)
    at com.facebook.fresco.animation.factory.AnimatedFactoryV2Impl$1.decode(AnimatedFactoryV2Impl.java:89)
    at com.facebook.imagepipeline.decoder.DefaultImageDecoder.decodeGif(DefaultImageDecoder.java:139)
    at com.facebook.imagepipeline.decoder.DefaultImageDecoder$1.decode(DefaultImageDecoder.java:60)
    at com.facebook.imagepipeline.decoder.DefaultImageDecoder.decode(DefaultImageDecoder.java:120)
    at com.facebook.imagepipeline.producers.DecodeProducer$ProgressiveDecoder.internalDecode(DecodeProducer.java:386)
    at com.facebook.imagepipeline.producers.DecodeProducer$ProgressiveDecoder.doDecode(DecodeProducer.java:328)
    at com.facebook.imagepipeline.producers.DecodeProducer$ProgressiveDecoder.access$400(DecodeProducer.java:145)
    at com.facebook.imagepipeline.producers.DecodeProducer$ProgressiveDecoder$1.run(DecodeProducer.java:198)
    at com.facebook.imagepipeline.producers.JobScheduler.doJob(JobScheduler.java:224)
    at com.facebook.imagepipeline.producers.JobScheduler.access$000(JobScheduler.java:24)
    at com.facebook.imagepipeline.producers.JobScheduler$1.run(JobScheduler.java:90)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
    at com.facebook.imagepipeline.core.PriorityThreadFactory$1.run(PriorityThreadFactory.java:52)
    at java.lang.Thread.run(Thread.java:923)
 

Кто — нибудь знает, что здесь происходит?

Комментарии:

1. Проверьте этот путь : noSuchMethod Ошибка: Нет статического метода Проверка аргумента(Z)V в классе Lcom/facebook/общие/внутренние/Предварительные условия;

Ответ №1:

Я наконец-то нашел решение, похоже, у меня были реализации в моих зависимостях, которые мне не нужны внутри приложения build.gradle. У меня не было никакой анимации, поэтому я решил прокомментировать две реализации, и вуаля!

 dependencies {
...
implementation 'com.facebook.fresco:animated-gif:2.0.0'
implementation 'com.facebook.fresco:animated-webp:1.9.0'