如何在Kotlin代码中访问build.gradle.kts中定义的自定义配置字段
如何在Kotlin代码中访问build.gradle.kts中定义的任意值?
要实现这个需求可以通过buildConfigField配置完成,分为两步操作:
步骤1:在build.gradle.kts中声明要透出的配置项
你可以在build.gradle.kts的buildTypes代码块中,针对不同构建类型定义对应值,以功能开关为例配置如下:
android { ... buildTypes { getByName("debug") { buildConfigField("Boolean", "FOO", "true") } getByName("release") { buildConfigField("Boolean", "FOO", "false") } } ... }
其中buildConfigField的三个参数分别对应:字段类型、字段名、字段值。如果要定义字符串类型的字段,需要额外给值加一层转义引号,示例:
buildConfigField("String", "API_HOST", "\"https://test.example.com\"")
步骤2:在Kotlin代码中直接读取
Android构建工具会自动生成BuildConfig类,所有你声明的buildConfigField都会作为静态常量包含在这个类里,直接调用即可,示例:
class FeatureFlag { fun isFeatureEnabled(): Boolean = BuildConfig.FOO }
内容的提问来源于stack exchange,提问作者Perry Hoekstra
相关产品推荐
相关产品推荐

