Как получить вариант сборки во времени выполнения в Studio Android?

Я хотел бы получить вариант сборки во время времени выполнения, действительно ли это возможно без дополнительной конфигурации или кода?

60
задан 2 May 2014 в 19:10

2 ответа

Вот пример, чтобы определить и добраться BuildConfig для другой разновидности

android {

    defaultConfig {
        ...
    buildTypes {
        ...
    }

    flavorDimensions "default"
    productFlavors {

        develop {
            applicationIdSuffix ".dev"
            versionNameSuffix "-dev"
        }

        staging {
            applicationIdSuffix ".stg"
            versionNameSuffix "-stg"
        }

        production {
            applicationIdSuffix ""
            versionNameSuffix ""
        }
    }

    applicationVariants.all { variant ->

        def BASE_URL = ""

        if (variant.getName().contains("develop")) {
            BASE_URL = "https://localhost:8080.com/"
        } else if (variant.getName().contains("staging")) {
            BASE_URL = "https://stagingdomain.com/"
        } else if (variant.getName().contains("production")) {
            BASE_URL = "https://productdomain.com/"
        }
        variant.buildConfigField "String", "BASE_URL", "\"${BASE_URL}\""

    }
}

Используя

BuildConfig.BASE_URL

1
ответ дан 1 November 2019 в 10:13

Если Вы не являетесь уже ароматическими затем никакая потребность обеспечить дополнительное строковое поле в Вашем gradle. Просто выполните простые шаги для получения деталей сборки:

Для варианта сборки: BuildConfig. РАЗНОВИДНОСТЬ
Для кода версии сборки: BuildConfig. VERSION_CODE
Для имени версии сборки: BuildConfig. VERSION_NAME

0
ответ дан 1 November 2019 в 10:13

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

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