public interface ApiService {
@GET("api.php/api/Lists/content_lists&version=1.7&token=&type=1&cat=&catid2=&")
Observable<HomeBean> getService(@Query("page")String page);
}
Imodel
public interface IModel {
interface OnRequstListener{
void onSuccess(HomeBean homeBean);
void onError();
}
void getRequestData(OnRequstListener listener);
}
ImodelHome
public class ModelHome implements IModel{
@Override
public void getRequestData(final OnRequstListener listener) {
Retrofit retrofit = new Retrofit.Builder()
.addConverterFactory(GsonConverterFactory.create())
.addCallAdapterFactory(RxJavaCallAdapterFactory.create())
.baseUrl("https://app.tuozhe8.com/")
.build();
ApiService apiService = retrofit.create(ApiService.class);
Observable<HomeBean> service = apiService.getService("1");
service.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Subscriber<HomeBean>() {
@Override
public void onCompleted() {
}
@Override
public void onError(Throwable e) {
}
@Override
public void onNext(HomeBean homeBean) {
listener.onSuccess(homeBean);
}
});
}
}
public interface IPresenterHome {
void takeData();
}
public class PresenterHome implements IPresenterHome{
private IViewHome iViewHome;
private IModel iModel;
public PresenterHome(IViewHome iViewHome) {
this.iViewHome = iViewHome;
this.iModel = new ModelHome();
}
@Override
public void takeData() {
iModel.getRequestData(new IModel.OnRequstListener() {
@Override
public void onSuccess(HomeBean homeBean) {
iViewHome.getData(homeBean);
}
@Override
public void onError() {
}
});
}
}
public interface IViewHome {
void getData(HomeBean homeBean);
}
public class MyApp extends Application {
@Override
public void onCreate() {
super.onCreate();
Fresco.initialize(this);
}
}