У меня есть измерение, содержащее 2 варианта, как показано ниже:
Размер: mode
-
lite
: добавление имени приложения:Lite
. Добавление имени пакета:.lite
. -
full
: Имя приложения не добавляетсяFull
. Добавление имени пакета:.full
.
И buildTypes
:
-
debug
: добавление имени приложения:(Dev)
. Добавление имени пакета:.debug
. -
release
: ничего не добавлять, потому что это должен быть файл выпуска.
Я хочу объединить его с buildTypes
(debug
, release
), чтобы сгенерировать имя приложения и имя пакета на основе этих buildTypes
и dimensions
выше.
Поскольку я использовал имя приложения везде в приложении, поэтому я хочу сгенерировать его в файл strings.xml, если это возможно.
Вот примеры:
-
debug
+lite
:App Lite (Dev)
com.androidapp.lite.debug
-
debug
+full
:App Full (Dev)
com.androidapp.full.debug
-
release
+lite
:App Lite
com.androidapp.lite
-
release
+full
:App Full
com.androidapp.full
Я пока не нашел решения для имени приложения.
Вот что я пробовал для имени пакета, это работает, но выглядит плохо:
def mode = ""
def type = ""
buildTypes {
debug {
type = ".debug"
applicationIdSuffix("${mode}${type}")
}
release {
type = ""
applicationIdSuffix("${mode}${type}")
}
flavorDimensions "mode"
productFlavors {
lite {
dimension "mode"
mode = ".lite"
applicationIdSuffix("${mode}${type}")
}
full {
dimension "mode"
mode = ".full"
applicationIdSuffix("${mode}${type}")
}
}
Проверьте этот вопрос - coderhelper.com/questions/24303522/…