第一步,在Android Studio目录下build.gradle中添加:
compile 'com.squareup.retrofit2:retrofit:(insert latest version)'
第二步,创建接口API,(DemoApi工具类
)
/** *DemoApi Api util */ public class DemoApi { private static final String URL = "http://cg.alwaysmkt.com.cn"; /** * the basic RestAdapter */ public static RestAdapter SimpleRestAdapter = new RestAdapter.Builder() .setLogLevel(RestAdapter.LogLevel.FULL) .setEndpoint(URL) .build(); public static RestAdapter NormalRestAdapter = new RestAdapter.Builder() .setLogLevel(RestAdapter.LogLevel.FULL) .setEndpoint(URL) .build(); /** * return a custom RestAdpater * * @param url the custom url * @param requestInterceptor requestInterceptor * @return restAdapter */ public static RestAdapter getCustomRESTAdapter(String url, RequestInterceptor requestInterceptor) { RestAdapter restAdapter = new RestAdapter.Builder() .setLogLevel(RestAdapter.LogLevel.FULL) .setEndpoint(url) .setRequestInterceptor(requestInterceptor) .build(); return setLog(restAdapter); } /** * return a default RESTAdapter from address.properties file * * @param requestInterceptor requestInterceptor * @return a default restAdapter */ public static RestAdapter getRESTAdapter(RequestInterceptor requestInterceptor) { RestAdapter restAdapter = new RestAdapter.Builder() .setLogLevel(RestAdapter.LogLevel.FULL) .setEndpoint(URL) .setRequestInterceptor(requestInterceptor) .build(); return setLog(restAdapter); } private static RestAdapter setLog(RestAdapter restAdapter) { restAdapter.setLogLevel(RestAdapter.LogLevel.FULL); return restAdapter; } }第三步创建接Data类:
public class Data<T> { private int status; private String msg; private T data; public int getStatus() { return status; } public void setStatus(int status) { this.status = status; } public String getMsg() { return msg; } public void setMsg(String msg) { this.msg = msg; } public T getData() { return data; } public void setData(T data) { this.data = data; } @Override public String toString() { return "ResponseData{" + "state=" + status + ", msg='" + msg + '\'' + ", data=" + data + '}'; } }第四步创建接口Service类:
public interface Service { //POST请求方式 @POST("/api/supervisor/receivePhotos.action") @FormUrlEncoded void postPhotoResponse( @Field("submitId") String submitId//请求参数 Callback<Data<String>>callback); //GET请求方式 @GET("/api/supervisor/receivePhotos.action") void getPhotoResponse( @Query("submitId") String submitId//请求参数 Callback<Data<String>>callback); }第五步使用:
Service service = DemoApi.NormalRestAdapter.create(Service.class); service.postResponse("请求参数值", new Callback<data<String>>() { @Override public void success(data<String>data, Response response) { loadingDialog.dismiss(); int status = data.getStatus(); switch (status) { case 200: break; default: break; } } @Override public void failure(RetrofitError error) { Log.d("network", error+""); } });
简单写下快捷实现网络请求Retrofit方法步骤。有错及时评价给我