/*
* Serice生成器
*/
public class ServiceGenerator {
private static String BASE_URL = "http://api.juheapi.com/";
private static Retrofit.Builder builder =
new Retrofit.Builder()
.addConverterFactory(GsonConverterFactory.create())
.baseUrl(BASE_URL);
public static T createServiceFrom(Class serviceClass) {
return builder.build().create(serviceClass);
}
}
在上面这个类里面,进行来添加更改baseurl的代码
public static void changeApiBaseUrl(String newApiBaseUrl) {
BASE_URL = newApiBaseUrl;
builder = new Retrofit.Builder()
.addConverterFactory(GsonConverterFactory.create())
.baseUrl(BASE_URL);
}
使用方式:
public void getToh(String key, String version, String month, String day, Callback callBack) {
mWeChatQuery = ServiceGenerator.createServiceFrom(WeChatQueryService.class);
Call call = mWeChatQuery.getToh(key,version,month, day);
call.enqueue(callBack);
}
public void getWeChatQuery(String key, Callback callback) {
ServiceGenerator.changeApiBaseUrl(ApiAddressPool.API_JUHE_WECHAT);//改变API
mWeChatQuery = ServiceGenerator.createServiceFrom(WeChatQueryService.class);
Call call = mWeChatQuery.getWeChatQuery(key, "", "", "");
call.enqueue(callback);
}
打印结果:
I/System.out: http://api.juheapi.com/
I/System.out: http://v.juhe.cn/