如何定义共享构建变量?
How to define a shared build variable?
我正在尝试为每种构建类型设置自定义变量。
我的 build.gradle 文件如下所示:
buildTypes {
each {
buildConfigField "string", "SHARED_URL", "https://whosebug.com/"
}
debug {
buildConfigField "string", "PRIVATE_URL", "https://debugoverflow.com/"
}
release {
buildConfigField "string", "PRIVATE_URL", "https://releaseoverflow.com/"
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
而且我想在调试和发布版本中通过 final String sharedUrl = BuildConfig.SHARED_URL;
访问我的代码中的 SHARED_URL
。那么,我怎样才能实现这个目标呢?
P.S。我知道我可以在两个版本中复制变量 SHARED_URL
,但我不想样板化。
你可以把你的普通 buildConfigField
放在 defaultConfig
:
android {
defaultConfig {
buildConfigField "string", "SHARED_URL", "https://whosebug.com/"
}
buildTypes {
debug {
buildConfigField "string", "PRIVATE_URL", "https://debugoverflow.com/"
}
release {
buildConfigField "string", "PRIVATE_URL", "https://releaseoverflow.com/"
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}
SHARED_URL
现在可用于所有构建变体。
我正在尝试为每种构建类型设置自定义变量。
我的 build.gradle 文件如下所示:
buildTypes {
each {
buildConfigField "string", "SHARED_URL", "https://whosebug.com/"
}
debug {
buildConfigField "string", "PRIVATE_URL", "https://debugoverflow.com/"
}
release {
buildConfigField "string", "PRIVATE_URL", "https://releaseoverflow.com/"
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
而且我想在调试和发布版本中通过 final String sharedUrl = BuildConfig.SHARED_URL;
访问我的代码中的 SHARED_URL
。那么,我怎样才能实现这个目标呢?
P.S。我知道我可以在两个版本中复制变量 SHARED_URL
,但我不想样板化。
你可以把你的普通 buildConfigField
放在 defaultConfig
:
android {
defaultConfig {
buildConfigField "string", "SHARED_URL", "https://whosebug.com/"
}
buildTypes {
debug {
buildConfigField "string", "PRIVATE_URL", "https://debugoverflow.com/"
}
release {
buildConfigField "string", "PRIVATE_URL", "https://releaseoverflow.com/"
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}
SHARED_URL
现在可用于所有构建变体。