Android не может соответствовать запрошенным классам в файле main-dex - PullRequest
0 голосов
/ 10 мая 2019

Пожалуйста, помогите сойти с ума

Я строю проект Android, он показывает ошибку NoClassDefFoundError.

Я положил ниже строки в файле Multi-dex-config.pro.

keep class com.google.firebase.**{*;}
keep class com.google.android.gms.** { *; }
keep class com.ustaadthehandyman.user.activities**{*;}</i>

После повторной сборки отображается ошибка. Не удается разместить запрошенные классы в файле main-dex (# методы: 67808> 65536)

После редактирования файла Multi-dex-config.pro, как показано ниже

keep class com.google.firebase.provider**{*;}
keep class com.google.android.gms.provider** { *; }
keep class com.ustaadthehandyman.user.activities**{*;}</i>

Это показывает еще одну ошибку NoClassDefFoundError в другом классе

Я любой автоматизированный способ поместить требуемый класс в основной файл dex.

Пожалуйста, помогите мне

спасибозаранее.

1 Ответ

0 голосов
/ 10 мая 2019

Я думаю, вы путаете Proguard / R8 (например, минификацию) с мультидексом. Лучше воспользуйтесь последним и отключите минификацию Proguard (ее сложнее понять правильно).

См. Включение мультидекса для приложений с более чем 64К-методами на сайте документации Android.

В частности, добавьте следующее, если ваш minSdkVersion равен 21 +:

android {
    defaultConfig {
        ...
        multiDexEnabled true
    }
    ...
}

Если ваше приложение ниже API 21, см. Дополнительную информацию на связанной странице.

...