我正在构建两个 android 应用程序,它们在相同的代码库上中继,但它们从中获取文件的服务器地址不同。
到目前为止,我已经创建了两行服务器地址常量,并使用第一个 const 构建了一次应用程序,第二次使用第二个 const 构建了应用程序。
有什么方法可以让我的应用程序编译两次,一次使用第一个常量,第二次使用第二个常量?
我正在使用带有 Gradle 构建的 Android Studio。
谢谢!
我正在构建两个 android 应用程序,它们在相同的代码库上中继,但它们从中获取文件的服务器地址不同。
到目前为止,我已经创建了两行服务器地址常量,并使用第一个 const 构建了一次应用程序,第二次使用第二个 const 构建了应用程序。
有什么方法可以让我的应用程序编译两次,一次使用第一个常量,第二次使用第二个常量?
我正在使用带有 Gradle 构建的 Android Studio。
谢谢!
您可以使用产品风格来教 Gradle 构建应用程序的两个单独副本,其中您的服务器地址定义在BuildConfig
:
android {
// other stuff here
productFlavors {
flavorOne {
buildConfigField "String", "URL", '"https://..."'
}
flavorTwo {
buildConfigField "String", "URL", '"https://..."'
}
}
}
在您的 Java 代码中,请参阅BuildConfig.URL
获取要使用的 URL。
是的,您可以使用构建变体。您可以将这些字符串移动到变体目录下的资源中,构建将拉入正确的。
以下是有关如何设置它们的完整文档的链接:https ://developer.android.com/studio/build/build-variants.html