2016-04-01 6 views
5

BuildConfig.DEBUG всегда возвращает false, когда я запускал приложение?BuildConfig.DEBUG всегда возвращает false

я использовать его для управления журнал, как этот

public static void d(String LOG_TAG,String msg){ 
    if(BuildConfig.DEBUG){ 
     Log.d(LOG_TAG,msg); 
    } 
} 
+0

Возможный дубликат [BuildConfig.DEBUG всегда ложный при создании проектов библиотеки с градиентом) (http://stackoverflow.com/questions/20176284/buildconfig-debug-always-false-when-building-library-projects-with- gradle) – Oleksandr

ответ

3

В вас Android-студия сборки вариант вы на отладки вариант?

2

Если этот код находится в библиотеке, то он всегда будет ложным, благодаря 3-year-old bug in gradle.

0

Существует обходной путь для этой проблемы:

App

dependencies { 
    releaseCompile project(path: ':library', configuration: 'release') 
    debugCompile project(path: ':library', configuration: 'debug') 
} 

Библиотека

android { 
    publishNonDefault true 
} 
0

Может быть, не идеально, но я в конечном итоге создать мой собственный

buildTypes { 
    debug { 
     buildConfigField "boolean", "IS_DEBUG", "true" // Had issues with BuildConfig.DEBUG, created IS_DEBUG to ensure functionality behaved as expected. 
    } 
    release { 
     signingConfig signingConfigs.release 
     buildConfigField "boolean", "IS_DEBUG", "false" 
    } 
} 

И после этого адресуйте его как BuildConfig.IS_DEBUG programatically.

12

Проверьте импорт в классе, убедитесь, что используете правильный путь BuildConfig. Вы можете использовать BuildConfig не из своего приложения, а из какой-либо библиотеки.

+0

Да. Вы хотите 'import com.myurl.mypackage.BuildConfig', а не совместимость или другие версии Android или библиотеки. – Gary99

Смежные вопросы