MVP_Retrofit

来源:互联网 发布:中间件监控数据采集 编辑:程序博客网 时间:2024/06/01 07:17

依赖

retrofit依赖(强大的依赖)// Retrofit库compile 'com.squareup.retrofit2:retrofit:2.0.2'// Okhttp库compile 'com.squareup.okhttp3:okhttp:3.1.2'compile 'com.squareup.retrofit2:converter-gson:2.0.2'compile 'com.squareup.retrofit2:adapter-rxjava:2.1.0'compile 'io.reactivex:rxjava:1.0.14'compile 'io.reactivex:rxandroid:1.0.1'

M层

public interface Model {    @GET("getVideoList.do?catalogId=402834815584e463015584e539330016&pnum=89")    Call<Bean> getssata();}

V层

public interface View {    void getdata(ArrayList<Bean.RetBean.ListBean> list);}

P层

import android.content.Context;import java.util.ArrayList;import java.util.List;import cui.com.retrofit.Bean;import cui.com.retrofit.m.Model;import cui.com.retrofit.v.View;import okhttp3.OkHttpClient;import retrofit2.Call;import retrofit2.Callback;import retrofit2.Response;import retrofit2.Retrofit;import retrofit2.adapter.rxjava.RxJavaCallAdapterFactory;import retrofit2.converter.gson.GsonConverterFactory;public class Presenter {    Context context;    View view;    Model model;    public Presenter(Context context, View view) {        this.context = context;        this.view = view;    }    public void ss()    {       //拦截器       okhttputils c=new okhttputils.Builder().addIntercereptor(new );        Retrofit retrofit=new Retrofit.Builder()                          .baseUrl("http://api.svipmovie.com/front/ columns/")                .addConverterFactory(GsonConverterFactory.create()) //设置使用Gson解析(记得加入依赖)                .addCallAdapterFactory(RxJavaCallAdapterFactory.create())                .addC...(c)//添加拦截器                .build();               //创建接口的实例               model=retrofit.create(Model.class);         Call<Bean> call=model.getssata();        call.enqueue(new Callback<Bean>() {            @Override            public void onResponse(Call<Bean> call, Response<Bean> response) {                System.out.println(response.body());               List<Bean.RetBean.ListBean> list=response.body().getRet().getList();               view.getdata((ArrayList<Bean.RetBean.ListBean>) list);            }            @Override            public void onFailure(Call<Bean> call, Throwable t) {            }        });    }}