Ответ 1
Это все еще работает для меня, но, похоже, работает:
productFlavors {
development {
versionName = android.defaultConfig.versionName + (System.getenv("BUILD_NUMBER") as Integer ? "-build" + System.getenv("BUILD_NUMBER") as Integer : "-developerBuild")
}
}
Таким образом, мы можем установить versionName в defaultConfig, на сервере сборки он устанавливает переменную окружения BUILD_NUMBER, поэтому заканчивается следующим образом: 1.2-build1234
В производственной сборке используется defaultConfig, поэтому это просто 1.2
и при построении dev, переменная окружения не установлена, поэтому ее 1.2-developerBuild
Только что придумал этот план сегодня вечером (так можно было бы упростить, я уверен), поэтому работа над получением последней версии контроля версий добавлена, когда на dev-машине, но я видел другие ответы, как это сделать.