1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
| public static KqApi getDefaultApi() { String serverIp = KqSharedUtil.getServerIp(); if (api0 == null) { synchronized (Api.class) { if (api0 == null) { File cache = KqApplication.getINSTANCE().getCacheDir();
OkHttpClient client = new OkHttpClient.Builder() .cache(new Cache(cache, 1024)) .readTimeout(20, TimeUnit.SECONDS) .writeTimeout(20, TimeUnit.SECONDS) .connectTimeout(10, TimeUnit.SECONDS) .addNetworkInterceptor(new Interceptor() { @Override public Response intercept(Chain chain) throws IOException { Request request = chain.request().newBuilder() .cacheControl(new CacheControl.Builder().noCache().build()) .build(); return chain.proceed(request); } })
.build(); Retrofit retrofit = new Retrofit.Builder() .client(client) .addConverterFactory(GsonConverterFactory.create()) .addCallAdapterFactory(RxJavaCallAdapterFactory.create()) .baseUrl(serverIp) .build(); api0 = retrofit.create(KqApi.class); } } } return api0; }
|