https://blog.csdn.net/yanxiaosa/article/details/62047129
https://blog.csdn.net/u011458979/article/details/51912447
开发环境的url与测试环境,生产环境的url往往不一致。
如何区别配置url
1. 在主module(app)的build.gradle里面配置如下:
//测试环境
def API_SIT_HOST = "\"http://***:***/***-sit/\""
//开发环境
def API_DEV_HOST = "\"http://***:***/***/\""
注意:这里斜杠不可去掉,否则会识别url出错。
2. 同时,在android{ }的defaultConfig 下
defaultConfig {
applicationId 。。。
minSdkVersion 。。。
targetSdkVersion 。。。
。。。
buildConfigField("String", "API_HOST", "${API_DEV_HOST}")
}
以上代码表示配置一个名字为API_HOST的变量,默认取值为:API_DEV_HOST。
3. 在buildTypes 下
buildTypes {
sit {
//url动态替换,测试环境url
buildConfigField "String", "API_HOST", "${API_SIT_HOST}"
。。。
}
dev {
//url动态替换,开发环境url
buildConfigField "String", "API_HOST", "${API_DEV_HOST}"
。。。
}
debug {
。。。
}
}
完成。
验证:
在build-generated-source下会生成对应的目录(sit,dev,debug)。找到相应的BuildConfig类
public final class BuildConfig {
public static final boolean DEBUG = false;
public static final String APPLICATION_ID = "***";
public static final String BUILD_TYPE = "sit";
public static final String FLAVOR = "";
public static final int VERSION_CODE = 1;
public static final String VERSION_NAME = "1.03";
// Fields from build type: sit
public static final String API_HOST = "http://***:***/***-sit/";
// Fields from default config.
}
即配置成功。