Ответ
Да, в Android есть понятие Build Variants и Flavors, которые позволяют настраивать разные версии приложения (например, dev, staging, prod).
Пример в build.gradle:
android {
flavorDimensions "environment"
productFlavors {
dev {
dimension "environment"
applicationIdSuffix ".dev"
}
prod {
dimension "environment"
}
}
}
Можно собирать разные версии через Build Variants в Android Studio или командой:
./gradlew assembleDevDebug Ответ 18+ 🔞
А, ну это про сборки в Андроиде, ебать мои старые костыли! Слушай, тут всё просто, как палка. Есть у них такая штука — Build Variants и Flavors. Это чтобы не городить огород из трёх отдельных проектов, когда тебе нужна dev-версия, staging и уже боевая prod.
Представь, ты делаешь приложение. Для теста нужно, чтобы оно к тестовому серверу ходило, апатька applicationId другой был, и логов овердохуища. А для прода — всё строго, минимум телеметрии. Так вот, flavors — это как раз такие профили. Не нужно копировать весь проект, просто в конфиге прописываешь отличия. Гениально же, ёпта!
Смотри, как это в build.gradle выглядит. Всё по-взрослому:
android {
flavorDimensions "environment" // Это типа группа, куда наши версии попадут
productFlavors {
dev { // Вот наш dev-флейвор, для разработки
dimension "environment" // Говорим, что он из группы "environment"
applicationIdSuffix ".dev" // К основному applicationId добавится ".dev". Удобно, можно и dev, и prod на одном телефоне держать.
}
prod { // А это уже боевой
dimension "environment"
// Тут можно, например, minifyEnabled true включить, чтоб код сжимался
}
}
}
Вот и вся магия. Создал два флейвора — dev и prod. Теперь в студии, в углу, где обычно app, у тебя появятся варианты сборки: devDebug, devRelease, prodDebug, prodRelease. Выбираешь devDebug — собирается отладочная dev-версия. Выбрал prodRelease — собирается релизная боевая версия. Красота, ядрёна вошь!
А если через консоль, то команды вот такие:
./gradlew assembleDevDebug
Или assembleProdRelease. Собрал — и сиди, радуйся. Не нужно руками конфиги менять и ошибаться, где тестовый API-ключ в продакшен засунуть. Всё автоматически подтянется в зависимости от выбранного флейвора. Удивление пиздец, как же раньше без этого жили-то?