Android 多环境(生产、测试、开发)多域名网络配置

Product Flavors

build.gradle 配置多个 Flavor

app/build.gradle 文件中配置:

java 复制代码
android {
    flavorDimensions "default"

    productFlavors {
        dev {
            dimension "default"
            applicationIdSuffix ".dev"
            versionNameSuffix "-dev"
            buildConfigField "String", "BASE_URL", "\"https://api-dev.example.com/\""
            buildConfigField "String", "AUTH_URL", "\"https://auth-dev.example.com/\""
        }
        staging {
            dimension "default"
            applicationIdSuffix ".staging"
            versionNameSuffix "-staging"
            buildConfigField "String", "BASE_URL", "\"https://api-staging.example.com/\""
            buildConfigField "String", "AUTH_URL", "\"https://auth-staging.example.com/\""
        }
        prod {
            dimension "default"
            buildConfigField "String", "BASE_URL", "\"https://api.example.com/\""
            buildConfigField "String", "AUTH_URL", "\"https://auth.example.com/\""
        }
    }
}

在 Java 代码中使用 BuildConfig

java 复制代码
public class ApiConfig {
    public static final String BASE_URL = BuildConfig.BASE_URL;
    public static final String AUTH_URL = BuildConfig.AUTH_URL;
}

在 Android Studio 选择不同环境

Build Variants 选择:

  • devDebug
  • stagingDebug
  • prodRelease

这样就可以使用不同的 API 地址了。

相关推荐
我是好小孩4 小时前
Android-侧边导航栏的使用
android·gitee
吗喽对你问好4 小时前
安卓基础布局核心知识点整理
android·gitee
安卓开发者4 小时前
Android Material Components 全面解析:打造现代化 Material Design 应用
android
教程分享大师4 小时前
带root权限_中国移动创维DT541_S905L3融合机器改机顶盒刷机教程 当贝纯净版安卓9.0系统线刷包 刷机包
android
wuk9984 小时前
Android:UI:Drawable:View/ImageView与Drawable
android·ui
whysqwhw5 小时前
Kotlin 中作用域函数 let、with、run、also、apply 的核心使用指南
android
旋风菠萝6 小时前
设计模式---单例
android·java·开发语言
whysqwhw7 小时前
Android Jetpack 中 ViewModel 的全面解析
android
2501_9160074710 小时前
iPhone查看App日志和系统崩溃日志的完整实用指南
android·ios·小程序·https·uni-app·iphone·webview
稻草人不怕疼10 小时前
Android 渲染机制小结
android