Android studio - синхронизация градиента занимает слишком много времени, когда много ароматов (> 70)

У меня есть проект Android с: 2 вкуса (клиент и Режим) У меня есть более 70 клиентов и 2 типа режима: нормальный и дополнительный. Все клиенты являются «нормальными», и только один клиент является «дополнительным».

Я использую optionFilter {option ->, чтобы ограничить количество вариантов сборки при синхронизации моего проекта, чтобы избежать бесполезных клиентов в сочетании с режимом "extra", потому что есть только один клиент с этим режимом.

Например :

  • Customer1NormalRelease
  • Customer2NormalRelease
  • Customer3NormalRelease
  • Customer4ExtraRelease
  • Customer5NormalRelease
  • Customer6NormalRelease
  • ...

Проблема в том, что когда я пытаюсь синхронизировать Gradle с множеством вариантов, для каждого варианта требуется огромное количество времени.

При проверке сборки: разрешение зависимостей: appCustomer1NormalReleaseCompileClasspath занимает 8 минут. Более того, я не понимаю, почему appCustomer1NormalReleaseCompileClasspath пытается разрешить зависимости для других вариантов, потому что они полностью разные (нет смысла). Мои зависимости глобальны для проекта, никаких зависимостей, зависящих от варианта.

Я использую :

  • Студия Android 3.1.3
  • путь к классам 'com.android.tools.build:gradle:3.1.3'
  • distributionUrl = https: //services.gradle.org/distributions/gradle-4.4-all.zip
  • org.gradle.daemon = правда
  • org.gradle.jvmargs = -Xmx4096m -XX: MaxPermSize = 1024 м -XX: + HeapDumpOnOutOfMemoryError -Dfile.encoding = UTF-8
  • Глобальные настройки Gradle: автономная работа
  • все библиотеки удалены, и у меня только одна локальная библиотека

Есть идеи ?

Некоторая помощь будет принята с благодарностью

2
0
618
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вау, я нашел, в чем проблема!

Я использую OneSignal для push-уведомлений

Я использую gradle.plugin.com.onesignal: onesignal-gradle-plugin в моем build.gradle (приложении), чтобы обеспечить правильное поведение.

Я только что изменился

classpath 'gradle.plugin.com.onesignal:onesignal-gradle-plugin:0.10.2'

к

classpath 'gradle.plugin.com.onesignal:onesignal-gradle-plugin:0.11.2'

и сборка была супер быстрой. 2 минуты на приготовление всех вкусов: O

Так что, если у вас тоже есть такая проблема, проверьте свои плагины gradle !!!

Другие вопросы по теме