Определение размеров в Kotlin DSL для gradle

Я конвертирую свой build.gradle в Kotlin DSL. У меня есть 2 варианта сборки в приложении, и я не могу понять, как установить размер для ароматов:

flavorDimensions("type")

productFlavors {
    create("free") {
        buildConfigField("boolean", "IS_DONATE", false.toString())
        dimension = "type"
    }
    create("donate") {
        buildConfigField("boolean", "IS_DONATE", true.toString())
        dimension = "type"
    }
}

часть dimension = "type" не работает; как вы устанавливаете размер для каждого аромата?


person Francesc    schedule 17.02.2019    source источник


Ответы (2)


Используйте setDimension("тип")

flavorDimensions("type")

productFlavors {
    create("free") {
        buildConfigField("boolean", "IS_DONATE", false.toString())
        setDimension("type")
    }

    create("donate") {
        buildConfigField("boolean", "IS_DONATE", true.toString())
        setDimension("type")
    }
}
person Shweta Chauhan    schedule 18.02.2019
comment
Ну, это неудобно, я пробовал это, и оно показывалось красным, как будто это ошибка, но я только что попробовал еще раз, и теперь оно летает. - person Francesc; 18.02.2019
comment
@Francesc не так ли, потому что Gradle нужно было повторно синхронизировать, а проект нужно было перестроить? то же самое, что и с аннотациями и сгенерированным кодом (например, кинжал) - person Antek; 07.04.2020

В дополнение к ответу Шветы Чаухан в новых версиях Gradle setDimension("type") устарело.

Вместо этого вы должны использовать dimension("type").

person enoler    schedule 21.01.2021