在Android Gradle中禁用发布版本的代码

时间:2018-05-04 08:51:32

标签: android gradle

我在代码中包含const,其中包含一些重要信息:

const val IMPORTANT_CONST = "KEY INFORMATION"

我只将此const用于调试模式而且只是暂时的(一段时间之后我将其删除)。现在,我正在使用build config标志来知道我是否需要使用这个const。

如何隐藏此const或将值替换为我的发布版本变体的空字符串?

3 个答案:

答案 0 :(得分:2)

您可以将其添加为BuildConfig字段:

在您的应用程序gradle脚本中:

buildTypes {
    release {
        buildConfigField("String", "IMPORTANT_CONST ", "\"\"")
    }
    debug {
        buildConfigField("String", "IMPORTANT_CONST ", "\"my secret stuff\"")
    }
}

在您的代码中:

Log.i("MyApp", "IMPORTANT_CONST = " + BuildConfig.IMPORTANT_CONST );

答案 1 :(得分:1)

您可以像这样在gradle中配置常量:

        android {
    buildTypes {
        debug {
            buildConfigField "String", "IMPORTANT_CONST", "\"KEY INFORMATION\""
        }

        release {
            buildConfigField "String", "IMPORTANT_CONST", "\"\""
        }
    }
}

您可以使用BuildConfig.IMPORTANT_CONST

访问此变量

答案 2 :(得分:0)

使用BuildConfig根据您的gradle属性提供构建变体。

if (BuildConfig.DEBUG) {
       //Set your constant 
    } else {
         //replace constant value   
    }