Android 在build.gradle中有条件地定义resValue
我在build.gradle中定义resValue,如下所示Android 在build.gradle中有条件地定义resValue,android,android-gradle-plugin,Android,Android Gradle Plugin,我在build.gradle中定义resValue,如下所示 defaultConfig { ................................ ................................ resValue "string", "google_api_web_client_id", google_api_web_client_id } geo_api_key=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
defaultConfig {
................................
................................
resValue "string", "google_api_web_client_id", google_api_web_client_id
}
geo_api_key=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
geo_api_key_debug=xxxxxxxxxxxxxxxxxxyyyyyyyyyyyyy
该值位于gradle.properties
文件中
我想为debug build设置一个单独的值,比如,但是变量名应该是相同的google\u api\u web\u client\u id
在我的gradle.properties
文件中,我放置了以下内容
defaultConfig {
................................
................................
resValue "string", "google_api_web_client_id", google_api_web_client_id
}
geo_api_key=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
geo_api_key_debug=xxxxxxxxxxxxxxxxxxyyyyyyyyyyyyy
我想要的是,当构建类型为debug时,它将自动接受debug值,如果是release,它将接受release值。
我可以通过定义常量来实现,但在这种情况下,我必须将这些值放在build.gradle中。这是我不想要的
我怎样才能做到这一点呢?您可以按如下方式进行操作
buildTypes {
release {
buildConfigField "String", "google_api_web_client_id", "YUOR_CLIEN_ID"
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
debug {
buildConfigField "String", "google_api_web_client_id", "YUOR_CLIEN_ID"
}
}
你可以这样做
buildTypes {
release {
buildConfigField "String", "google_api_web_client_id", "YUOR_CLIEN_ID"
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
debug {
buildConfigField "String", "google_api_web_client_id", "YUOR_CLIEN_ID"
}
}
你可以这样说
buildTypes {
debug {
resValue 'string', 'google_api_web_client_id', 'debug_key'
}
release {
resValue 'string', 'google_api_web_client_id', 'release_key'
}
}
你可以这样说
buildTypes {
debug {
resValue 'string', 'google_api_web_client_id', 'debug_key'
}
release {
resValue 'string', 'google_api_web_client_id', 'release_key'
}
}
我认为这有助于你和其他类似的问题 在您的
gradle.properties中
MY_GOOGLE_API_KEY = "234235623"
在你的build.gradle
(应用程序)中
我认为这有助于你和其他类似的问题 在您的
gradle.properties中
MY_GOOGLE_API_KEY = "234235623"
在你的build.gradle
(应用程序)中
你试过在
android中的buildTypes{
下给出它吗{
是的,但是在这种情况下,我必须把硬编码的值放在build.gradle
中。我需要把它们放在gradle.properties
文件中。嘿,你发现这个答案正确吗?你试过在android中的buildTypes{
下给出它吗{
是的,但在这种情况下,我必须将硬编码值放入build.gradle
。我需要将它们放入gradle.properties
文件中。嘿,你发现这个答案正确吗?谢谢你的回答,但在这种情况下,我必须在build.gradle文件中放入debug_键或release_键。我不想这样做。我将它们放入gradle文件中。属性。嘿,你可以在gradle.properties中声明变量,并直接在build.gradleHanks中使用它们作为你的响应,但在这种情况下,我必须在build.gradle文件中放入debug\u key或release\u key。我不想这样做。我将它们放入gradle.properties中。嘿,你可以在gradle.properties中声明变量,并直接使用它们n构建。gradle@Mithun如果您认为我的答案正确,请务必将其标记为已接受,以便对您有所帮助others@Mithun如果你认为我的答案是正确的,请注意将其标记为已接受,以便对其他人有所帮助