0

我正在构建两个 android 应用程序,它们在相同的代码库上中继,但它们从中获取文件的服务器地址不同。

到目前为止,我已经创建了两行服务器地址常量,并使用第一个 const 构建了一次应用程序,第二次使用第二个 const 构建了应用程序。

有什么方法可以让我的应用程序编译两次,一次使用第一个常量,第二次使用第二个常量?

我正在使用带有 Gradle 构建的 Android Studio。

谢谢!

4

2 回答 2

2

您可以使用产品风格来教 Gradle 构建应用程序的两个单独副本,其中您的服务器地址定义在BuildConfig

android {
  // other stuff here

  productFlavors {
    flavorOne {
      buildConfigField "String", "URL", '"https://..."'
    }

    flavorTwo {
      buildConfigField "String", "URL", '"https://..."'
    }
  }
}

在您的 Java 代码中,请参阅BuildConfig.URL获取要使用的 URL。

于 2016-08-10T17:14:06.360 回答
1

是的,您可以使用构建变体。您可以将这些字符串移动到变体目录下的资源中,构建将拉入正确的。

以下是有关如何设置它们的完整文档的链接:https ://developer.android.com/studio/build/build-variants.html

于 2016-08-10T17:14:11.367 回答