2016-11-29 67 views
0

我想为调试版本和发行版本配置不同的配置。在大多数情况下,我的意思是具有不同的字符串常量,Android studio - 构建和运行配置

例如, 连接字符串。此外,我希望将运行配置连接到构建配置,以便当我从运行下拉列表中选择“释放”时,会自动构建正确的版本。这甚至可能吗?有没有办法使用基于构建配置的不同字符串资源文件?

+0

是的,你可以定义用于调试和release.Create'release'文件夹不同的字符串的文件。请参阅[本](http://stackoverflow.com/a/36042309/6005977) –

回答

3

在android studio中有产品风味功能。您必须在应用程序级build.gradle文件中为您的应用程序添加不同的风味。你可以将它们设置如下:

productFlavors { 
    sandbox { 
     versionCode 1 
     versionName "1.0" 
     applicationId "com.abc.sandbox" 
     buildConfigField 'String', 'HOST', '"http://api/v1/"' 
    } 

    development { 
     versionCode 1 
     versionName "1.0" 
     applicationId "com.abc.development" 
     buildConfigField 'String', 'HOST', '"http://api/v1/"' 
    } 

    production { 
     versionCode 1 
     versionName "1.0" 
     applicationId "com.abc.production" 
     buildConfigField 'String', 'HOST', '"http://api/v1/"' 
    } 

}

您可以通过运行应用程序之前从内部版本中选择运行各自的味道。

+0

谢谢!我不知道buildConfigField,这正是我所期待的。 – eko

0

您可以为调试模式创建单独的strings.xml并将字符串添加到它。

  1. 右键单击res文件夹在您的项目direcotry - >新建 - > Android资源文件。
  2. 在新窗口中,输入filename(strings.xml或您需要的任何其他文件),选择debug,如图所示Source Set,单击确定。
  3. 在这里添加您需要的数据在这个新的文件,
    <string name="same_key_as_in_original">Value</string>

enter image description here