在调试模式下运行Android应用程序

时间:2017-07-21 13:50:07

标签: android android-studio android-gradle android-gridview android-studio-2.3

我的Android Studio版本是2.3.3

在我的Android应用程序gradle构建中,我明确地为调试类型和发布类型定义了不同的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手机连接到笔记本电脑。 Android studio工具栏如下所示: enter image description here

我还选择了构建变体为“debug”:

enter image description here

我点击enter image description here,应用程序正在我的手机上运行,​​但是,它使用发布类型中定义的server_url值。为什么?

(在build/generated/res/resValues/debug/generated.xml& build/generated/res/resValues/release/generated.xml下面,我看到了那些价值观,没有任何问题。)

====更新===

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

1 个答案:

答案 0 :(得分:1)

只是回答您的更新问题,

多模块设置(应用程序+安卓库)不会从Android库模块中记录带注释的方法/类,但会在Android应用程序模块上执行。这背后的原因是,Android Gradle插件将构建所有Android库作为发行版本。

根据注释中的建议将defaultPublishConfig "debug"添加到build.gradle文件将强制调试版本