Такой вот вопос, у нас несколько человек работет над проектом, и в классе глобальных переменных есть такая boolean isDebugMode
Так вот вопрос в том, что при работе с кодом эта переменная true , но когда в основную бранч делаем пуш то она там должна быть false , но часто возникает ситуация когда просто кто то забывает ее перед пушем поставить в false
Можно ли написать какой то скрипт который при пуше будет автоматически менять эту переменную на false ?
Или может можно как то именно эту переменную исключитить из отслеживания гитом?
Чтоб она на удаленом репозитории всегда хранилась в значении false
Константа BuildConfig.DEBUG не подходит, потому что есть тесты которые мы проводим на дебаг версии
Вынесите свою переменную в buildTypes:
buildTypes {
debug {
minifyEnabled false
applicationIdSuffix ".debug"
versionNameSuffix "-debug"
buildConfigField "boolean", "IS_DEBUG_MODE", "true"
}
debugWithFalseDebugMode {
initWith debug
buildConfigField "boolean", "IS_DEBUG_MODE", "false"
}
release {
signingConfig signingConfigs.release
shrinkResources true
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
buildConfigField "boolean", "IS_DEBUG_MODE", "false"
}
}
Затем, в файле глобальных констант, берите ее значение:
public class Config {
public static final Boolean IS_DEBUG_MODE = BuildConfig.IS_DEBUG_MODE ;
...
}
Теперь используйте соответствующий buildType, когда это нужно.
Как вариант, можно динамически менять эту переменную в gradle:
buildTypes {
debug {
minifyEnabled false
buildConfigField "boolean", "IS_DEBUG_MODE", isDebugMode()
}
release {
minifyEnabled true
buildConfigField "boolean", "IS_DEBUG_MODE", isDebugMode()
}
}
def isDebugMode() {
def value = project.getProperties().get("IS_DEBUG_MODE")
return value != null ? value : "true"
}
Используете так:
./gradlew iDebug -PisDebugMode=true
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости