5

我正在实现一项新功能,该功能取决于应用程序是否正在运行、调试或发布,在两个 url 之间进行选择。

这是我使用 insidel gradle 来选择使用哪个 url 的代码->

侧面gradle中的代码

在下面的行中,我想要获取正确的 url,但是当我在调试中使用构建变体进行调试时,代码返回我发布 url。

获取 url 的代码行 -> 代码获取网址

我得到的网址-> 网址图片

检查 BuildConfig.BUILD_TYPE ->

构建配置

我得到释放模式,为什么?在 BUILD_TYPE 中进行一些研究,我发现了不同的 BuildConfig,其中两个在版本中具有 BUILD_TYPE ->

发布模式

它们之间的唯一区别是 -> 具有 BUILD_TYPE = "debug" 的那些具有像这样的 DEBUG ->

构建类型

BUILD_TYPE = "release" 有这样的调试 ->

调试图像

如何更改发布中的调试?知道 BuildConfig 类是单独生成的吗?

4

2 回答 2

1

您需要在通常位于 android studio 左下角的窗口中选择您的构建变体:在此处输入图像描述

于 2018-04-16T08:22:30.200 回答
1

以下对我有用:

android {
...
    applicationVariants.all { variant ->

        if (variant.getName() == "release") {
            variant.buildConfigField "String", "URL_SEND_EMAIL", "\"https://www.google.com\""
        } else {
            variant.buildConfigField "String", "URL_SEND_EMAIL", "\"https://www.gmail.com\""
        }
    }
}
dependencies {
...
}
于 2018-04-16T08:34:54.077 回答