Управление зависимостями библиотек в Android

У меня есть 5 проектов Android, все они имеют схожие зависимости, такие как Dagger, Retrofit, Rx и так далее. Существует ли стандартный способ управления версиями всех зависимостей, когда все проекты используют одну и ту же версию определенной библиотеки.

Образец:

implementation "com.google.dagger:dagger:${dagger_version}"
implementation "com.squareup.retrofit2:retrofit:${retrofitLibVersion}"
implementation "com.squareup.retrofit2:converter-gson:${retrofitLibVersion}"
implementation "com.squareup.retrofit2:converter-scalars:${retrofitLibVersion}"

В приведенном выше примере dagger_version а также retrofitLibVersion это то, что я хочу определить в одном месте и использовать его во всех проектах.

Любой вклад очень ценится.

1 ответ

Решение

Обычный подход состоит в том, чтобы определить их как ext в вашем корневом проекте build.gradle:

ext {
    dagger_version = '2.19'
    retrofitLibVersion = '2.4.0 '
}

Этого также можно достичь, загрузив удаленный или локальный файл Gradle и apply это к корневому проекту или к каждому подпроекту по мере необходимости:

apply from: 'versions.gradle'
Другие вопросы по тегам