Такой вот вопос, у нас несколько человек работет над проектом, и в классе глобальных переменных есть такая 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
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
В файле filejson сохраняется только один объект, последний
Мне нужно записать видео и отредактировать(добавить текст на видео или фильтры какие нибудь) как в Instagram
Что я имею ввиду?Например: я знаю что какое-то окно, назовем его x будет открыто к моменту запуска программы, и в этом окне допустим запрашивается...