Android вкус + зависимости типа сборки - PullRequest
1 голос
/ 08 ноября 2019

В моем файле build.gradle есть варианты, staging, stable и production, а также типы сборки по умолчанию debug и release. У меня есть разные файлы AAR для каждого из них, например, у меня есть AAR, который я хочу использовать для stagingDebug, другой для stagingRelease, а также stableDebug и все другие варианты.

Я могу использовать releaseImplementation ('xxxx@aar') и stagingImplementation ('yyyy@aar'), но я не могу использовать stagingReleaseImplementation ('zzzzz@aar')

Можно ли как-нибудь использовать специфические зависимости flav + тип сборки?

1 Ответ

0 голосов
/ 08 ноября 2019

Решение состоит в том, чтобы определить переменную в вашем файле верхнего уровня build.gradle:

project.ext.BuildCmdLine = "Release"

android {
    applicationVariants.all { variant ->
        project.ext.BuildCmdLine= variant.buildType.name // Sets the current build type
    }
}

Затем в файлах build.gradle вашего модуля вы можете установить зависимости, которые вы хотите использовать, основываясь на project.ext.BuildCmdLine:

dependencies {

    if (project.BuildCmdLine == "Release") {
        api(name: 'yourlib-release', ext: 'aar')
    } else {
        api(name: 'yourlib-debug', ext: 'aar')
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...