public class OkHttpUtils { private static OkHttpUtils okHttpUtils = null; public static OkHttpUtils getInstance() { if (okHttpUtils == null) { synchronized (OkHttpUtils.class) { if (okHttpUtils == null) { okHttpUtils = new OkHttpUtils(); } } } return okHttpUtils; } private static OkHttpClient okHttpClient = null; public synchronized static OkHttpClient getOkHttpClient() { if (okHttpClient == null) { HttpLoggingInterceptor interceptor = new HttpLoggingInterceptor(new HttpLoggingInterceptor.Logger() { @Override public void log(String message) { Log.i("拦截器", message); } }); interceptor.setLevel(HttpLoggingInterceptor.Level.BODY); okHttpClient = new OkHttpClient.Builder().addInterceptor(interceptor).build(); } return okHttpClient; } //get方法 public void doGet(String url, Callback callback) { OkHttpClient okHttpClient = getOkHttpClient(); Request request = new Request.Builder() .url(url) .build(); okHttpClient.newCall(request).enqueue(callback); } //doPost方法 public void doPost(String url, Map<String, String> params, Callback callback) { OkHttpClient okHttpClient = getOkHttpClient(); FormBody.Builder builder = new FormBody.Builder(); for (String key : params.keySet()) { builder.add(key, params.get(key)); } FormBody formBody = builder.build(); Request request = new Request.Builder() .post(formBody) .url(url) .build(); okHttpClient.newCall(request).enqueue(callback); } }