Build gradle переменные, которые будут использоваться в коде, в зависимости от типа и типа сборки
Есть ли способ использовать переменные из build.gradle в моем коде, который зависит от вкуса AND buildType?
В этом примере здесь: Можно ли объявить переменную в Gradle пригодной для использования в Java? значение нового ресурса зависит только от того, является ли его отладка или выпуск тип сборки.
То, что я хотел бы иметь, - это одна переменная для каждого возможного buildVariant.
так что-то вроде:
flavor1Debug => resValue "string", "app_name", "App 1 Debug"
flavor1Release => resValue "string", "app_name", "App 1"
flavor2Debug => resValue "string", "app_name", "App 2 Debug"
flavor2Release => resValue "string", "app_name", "App 2"
Есть ли хороший способ сделать это либо через build.gradle, либо другим способом, который не включает в себя ключи или выражения else?
Ответы
Ответ 1
В build.gradle для вашего приложения один из способов достижения этого:
buildTypes {
debug {
productFlavors.flavor1.buildConfigField "String", "app_name", "\"App 1 Debug\""
productFlavors.flavor2.buildConfigField "String", "app_name", "\"App 2 Debug\""
}
release {
productFlavors.flavor1.buildConfigField "String", "app_name", "\"App 1\""
productFlavors.flavor2.buildConfigField "String", "app_name", "\"App 2\""
}
}
Обратите внимание, что вы хотите определить свой блок productFlavors {} перед вашими buildTypes.