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

禁用Android Gradle中发布版本的代码,android,gradle,Android,Gradle,我的代码中包含一些重要信息: const val IMPORTANT_CONST = "KEY INFORMATION" 我只在调试模式下使用这个常量,而且只是临时的(过一段时间我会删除它)。现在,我使用build-config标志来确定是否需要使用这个常量 如何隐藏此常量或将值替换为发布版本版本变量的空字符串?使用BuildConfig,它将根据您的gradle属性提供版本变量 if (BuildConfig.DEBUG) { //Set your constant

我的代码中包含一些重要信息:

const val IMPORTANT_CONST = "KEY INFORMATION"
我只在调试模式下使用这个常量,而且只是临时的(过一段时间我会删除它)。现在,我使用build-config标志来确定是否需要使用这个常量


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

使用
BuildConfig
,它将根据您的gradle属性提供版本变量

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

使用
BuildConfig
,它将根据您的gradle属性提供构建变量

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

您可以按如下方式在gradle中配置常数:

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

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

您可以使用
BuildConfig.IMPORTANT\u CONST

访问此变量。您可以按如下方式在渐变中配置常量:

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

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

您可以使用
BuildConfig访问此变量。重要信息\u CONST

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

在应用程序gradle脚本中:

buildTypes {
    release {
        buildConfigField("String", "IMPORTANT_CONST ", "\"\"")
    }
    debug {
        buildConfigField("String", "IMPORTANT_CONST ", "\"my secret stuff\"")
    }
}
在您的代码中:

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

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

在应用程序gradle脚本中:

buildTypes {
    release {
        buildConfigField("String", "IMPORTANT_CONST ", "\"\"")
    }
    debug {
        buildConfigField("String", "IMPORTANT_CONST ", "\"my secret stuff\"")
    }
}
在您的代码中:

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

为什么不将firebase remote config设置为可以随时更改。为什么不将firebase remote config设置为可以随时更改。这种方法安全吗?我想确保没有人可以在发行版中访问此常量的值build@KacperOpyrchał:发布版本中不会出现秘密字符串。它将是一个空字符串(或选择给它的任何伪值)。所以,只要您不让人们访问调试APK或gradle脚本,这是安全的。这种方法安全吗?我想确保没有人可以在发行版中访问此常量的值build@KacperOpyrchał:发布版本中不会出现秘密字符串。它将是一个空字符串(或选择给它的任何伪值)。因此,只要您不允许人们访问调试APK或gradle脚本,这是安全的。