2014-10-21 2 views
0

Есть какой-либо способ настроить градуировку, чтобы проверить постоянную переменную типа DEBUG в проекте и показать ошибку, если она пытается сделать выпускную версию?Коэффициент проверки по шкале Gradle, чтобы показать ошибку, если true

Thanks

+0

'BuildConfig .DEBUG' никогда не будет правдой для сборки релиза, так почему бы просто не положиться на это? –

+0

Существуют другие переменные, которые я использую в своем проекте рядом с DEBUG. –

ответ

2

Я бы порекомендовал об этом по-другому. Вместо того, чтобы жестко кодировать другие переменные, а затем вызывать ошибку сборки, если они установлены в сборках выпусков, установите эти переменные в файле сборки и дайте им разные значения для типов сборки отладки и выпуска. Объектом для этого является директива buildConfigField, и этот механизм устанавливает переменные, которые действуют как BuildConfig.DEBUG.

Вы можете сделать что-то подобное в build.gradle вашего модуля:

buildTypes { 
    debug {    
     buildConfigField "String", "MY_CONSTANT", '"debugValue"' 
    } 
    release {    
     buildConfigField "String", "MY_CONSTANT", '"releaseValue"' 
    } 
} 

Это добавит BuildConfig.MY_CONSTANT, который будет иметь значение «debugValue» для отладки строит и «releaseValue» для освобождения.

Если вы хотите иметь различное поведение в отладке и выпуск сборок, в вашем коде, вы можете использовать условные на BuildConfig.DEBUG или на вашем постоянном:

if (BuildConfig.DEBUG) { 
    // Do something here only for debug builds 
} 

т.д.

Обратите внимание, что если вы действительно дон Не хотите устанавливать переменные в файле сборки, вы можете использовать этот условный шаблон для инициализации глобальных статических переменных прямо в коде:

if (BuildConfig.DEBUG) { 
    sGlobalVariable = "debug"; 
} 
Смежные вопросы