169 похожих чатов

Гайз, помогите разобраться в матчасти дебилу. Ошибки типа Exception in

onDidFinishLoadingStyle
java.lang.IncompatibleClassChangeError: Found interface com.google.android.gms.location.FusedLocationProviderClient, but class was expected (declaration of 'com.google.android.gms.location.FusedLocationProviderClient'

продолжают быть bane of my existence вот уже восьмой год моей проклятой карьеры.

Почему у меня в тестовом проекте, куда я подкидываю наш сраный сдк, в котором есть зависимость от плей сервисов 17 версии (которая, в свою очередь, сама является транзитивной зависимостью из мапбокса) у меня не воспроизводится эта хуета и, более того, она оверрайдится в самом сдк до 21 версии (где этот ебучий класс уже сделали интерфейсом). Почему у клиентов клиентов вылетает эта хуита про 17 версию? Как такое может быть? Куда копать?

9 ответов

14 просмотров

В External Libraries есть одинаковые зависимости разных версий?

⬤ vitaly- Автор вопроса
Leonid B.
В External Libraries есть одинаковые зависимости р...

нет, этот класс там в единственном экземпляре (но, опять-таки, на моём тестовом проекте. Наша сдк идёт транзитом в составе чьего-то другого сдк в третью прилагу 🤦‍♂️)

⬤ vitaly
нет, этот класс там в единственном экземпляре (но,...

Ну, может быть, они по дороге затянули себе разные версии.

⬤ vitaly- Автор вопроса
Leonid B.
Ну, может быть, они по дороге затянули себе разные...

шадоу / фэт джары и прочая вот эта вся коричневая магия? Или как вообще такое возможно? До этого эта ошибка вылетала в рантайме, там просто несовместима была наша внутренняя зависимость с их новой и классной, а тут в чём может быть дело я вообще ума не приложу(

⬤ vitaly
шадоу / фэт джары и прочая вот эта вся коричневая ...

Я не думаю, что там фэт. Просто версии разъехались. Пробовал BOM?

⬤ vitaly- Автор вопроса
Mike (деньги не клянчу)
Я не думаю, что там фэт. Просто версии разъехались...

А как понять "разъехались"? Не пробовал, даже не помню, что это, сейчас попробую, спасибо.

⬤ vitaly
А как понять "разъехались"? Не пробовал, даже не п...

две либы используют разные версии разных артефактов, а у них есть общая зависимось

⬤ vitaly
А как понять "разъехались"? Не пробовал, даже не п...

Они затянули другую версию либы. Там где-то поменялась сигнатура у чего-нибудь. Ваш код это вызывает, может быть даже опосредованно, и всё идёт по женской линии.

⬤ vitaly- Автор вопроса
Leonid B.
Они затянули другую версию либы. Там где-то поменя...

Хм. Вот у меня сдк, там мапбокс, которому нужна 17 версия, его мы вырубили ещё на стадии инициализации чтоб не дёргался, т.е. его в рантайме не вызывается. В билдскрипте явно прописана последняя версия. Почему у интеграторов всё равно юзает 17 версию с классами, если я вотпрямщас открыл тестовый проект и там эта либа 21, если я явно прописываю её такую в зависимостях? Вообще, я пересмотрел стек и там вызовы at com.android.volley.toolbox.JsonRequest.deliverResponse(JsonRequest.java:90) at com.android.volley.ExecutorDelivery$ResponseDeliveryRunnable.run(ExecutorDelivery.java:102) А мы воллей вообще не используем. Может, меня просто жестоко пранканули, сказав, что это из-за нашей сдк у них сыпется прилага?

Похожие вопросы

Обсуждают сегодня

Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
75
База данных не поможет. Шифрование не поможет. Какие там ещё варианты? Накидывайте.
КТ315
20
А табстоп это сообщение от окна или от элемента управления?
The Bird of Hermes
18
А как лучше конвертировать физический адрес в виртуальный при маппинге? В случае ядра у меня, например, direct mapping, первые 768МБ я как есть мапплю в higher half, а остальн...
Evg Resh
26
Открыл свой двухкилобайтный экзешник в x32dbg, а тут какая-то хрень. Смущает кнопка "выполнить до пользовательского кода", а что ещё может быть в файле помимо него ?
НѣкъиⰘижєжєиꙁъвьсєсвѣтьноѣсѣтиѥсть•
11
Мне были интересны дишные хаки и я нашёл любопытный способ на форуме через __traits, что-то вроде int delegate(int) fac = (int n) => n == 0 ? 1 : n * __traits(parent, {})(n - ...
Constantin F.
1
Вопрос тем кто смотрит видео и слушает подкасты - как вы потом ищете нужную вам информацию? Вот статью я прочитал, потом могу искать нужную мне часть банальным поиском. Пропус...
Aleksandr Druzhinin
4
Всем привет, подскажите/посоветуйте пожалуйста. Фаердак компоненты, имею одно место где бизнес хочет видеть при открытии формы список всех клиентов, это порядка 30к. Мои дово...
Sasha Sch
14
Ребят, если кто в курсе - скажите, а в загранке такое же засилье маркетплейсов? или там простые сермяжные интернет-магазины живут попроще?
Андрей [aharito] Харитонов
14
Коллеги, доброе утро. Запустил на удаленном хосте приложение (ручками зашел туда по ssh и запустил, не командой удаленно). Создал потом ssh-туннель, и с моей машины приложение...
Δημήτηρ
9
Карта сайта