···
package com.gyc.mytestapplication.rxtest.net;
import java.util.concurrent.TimeUnit;
import okhttp3.OkHttpClient; import retrofit2.Retrofit; import retrofit2.adapter.rxjava2.RxJava2CallAdapterFactory; import retrofit2.converter.gson.GsonConverterFactory;
public class OxNet { private static OxNet Instance = new OxNet(); private OxNet() {
}
public static OxNet getInstance() {
return Instance;
}
private OkHttpClient getOkHttpClient() {
return new OkHttpClient.Builder()
.addInterceptor(new LogInterceptor())
.connectTimeout(20*1000L, TimeUnit.MILLISECONDS)
.readTimeout(20*1000L, TimeUnit.MILLISECONDS)
.build();
}
private Retrofit getRetrofit(String baseUrl) {
return new Retrofit.Builder()
.addCallAdapterFactory(RxJava2CallAdapterFactory.create())
.addConverterFactory(GsonConverterFactory.create())
.baseUrl(baseUrl)
.client(getOkHttpClient())
.build();
}
public static <S> S createService(String baseUrl , Class<S> clazz){
return getInstance().getRetrofit(baseUrl).create(clazz);
}
}
···