Android Fresco — «ClassNotFoundException: androidx.exifinterface.media.ExifInterface» только на некоторых устройствахAndroid

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Android Fresco — «ClassNotFoundException: androidx.exifinterface.media.ExifInterface» только на некоторых устройствах

Сообщение Anonymous »

Недавно я начал получать отчеты об ошибках в некоторых из моих приложений, касающихся отсутствующего класса androidx.exifinterface.media.ExifInterface.
Странно, что это похоже на происходит только для некоторых определенных устройств.

Я думаю, что это исключение возникает на этапе инициализации конвейера Android Fresco, т. е. Fresco.initialize(...)
А. Попытка решить проблему вслепую - не работает:/
Поскольку я не совсем понимаю, что происходит, я внес следующие изменения в свою конфигурацию Gradle:
  • В мой /gradle/libs.versions.toml добавлено
    [versions]
    exifinterface = "1.3.7"
    ...
    [libraries]
    androidx-exifinterface = { module = "androidx.exifinterface:exifinterface", version.ref = "exifinterface" }
  • а также добавил в файл build.gradle моего проекта библиотеки следующее:
    api libs.androidx.exifinterface
Б. Возможно, используя R8/Proguard
Не уверен.. и какие операторы Proguard мне следует использовать??

Как-то так???
-keep class androidx.exifinterface.media.ExifInterface { *; }
-keepclassmembers class androidx.exifinterface.media.ExifInterface { *; }

С. Прошу помощи
  • Сталкивался ли кто-нибудь из вас с этой проблемой?
  • Если да, то как вы это сделали? решили это?
Примечание:
Я создал проблему на Github https от Fresco. ://github.com/facebook/fresco/issues/2810
К вашему сведению, трассировка стека, которая происходит в потоке «FrescoIoBoundExecutor»
java.lang.ClassNotFoundException: androidx.exifinterface.media.ExifInterface
[wrapped] java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/exifinterface/media/ExifInterface;
at c6.b.a(b.java:8)
at v5.f.l(f.java:482)
at com.facebook.imagepipeline.producers.LocalFetchProducer.d(LocalFetchProducer.java:162)
at com.facebook.imagepipeline.producers.SwallowResultProducer.run(SwallowResultProducer.java:12)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at com.google.android.material.datepicker.DateFormatTextWatcher.lambda$new$0(DateFormatTextWatcher.java:72)
at androidx.activity.ComponentActivity$onBackPressedDispatcher$2$$ExternalSyntheticLambda1.run(ComponentActivity.java:0)
at java.lang.Thread.run(Thread.java:919)


Подробнее здесь: https://stackoverflow.com/questions/791 ... -exifinter
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»