运行 Android 应用处于调试模式

Run Android app in debugging mode

我的Android Studio 版本是2.3.3

在我的 Android 应用 gradle 构建中,我为 debug 类型和 [=42= 明确定义了不同的 server_url 字符串值]发布类型:

buildTypes {
        debug {
            resValue "string", "server_url", "https://myserver.debug.com/"
        }
        release {
            resValue "string", "server_url", "https://myserver.com/"
            ...
        }
    }

在我的代码中,我通过以下方式获取字符串值:

String url = context.getString(R.string.server_url);

我将 Android phone 连接到笔记本电脑。 Android 工作室工具栏如下所示:

我还选择了构建变体 "debug":

我点击 ,我的 phone 上的应用是 运行,但是,它使用 release[= 中定义的 server_url 值46=]类型。为什么?

(在 build/generated/res/resValues/debug/generated.xmlbuild/generated/res/resValues/release/generated.xml 下,我看到了这些值,那里也没有问题。)

====更新===

添加 defaultPublishConfig 'debug' 解决了这个问题(感谢@Ulug Toprak),但我仍然想知道为什么 Android Studio 在没有它的情况下无法工作,尽管我已将 Build Variant 设置为 "Debug".可能是 Android Studio 中的错误?

只是为了回答您更新后的问题,

多模块设置(应用程序 + android 库)不会从 Android 库模块记录注释 methods/classes,但会在 Android 应用程序模块上记录。这背后的原因是 Android Gradle 插件将构建所有 Android 库作为发布版本。

如注释中所建议,将 defaultPublishConfig "debug" 添加到 build.gradle 文件将强制调试版本