创建Retrofit对象
封装Rxjava2中Observable方法
private void toSubscribe(Observable tObservable, Observer observer) {
tObservable.subscribeOn(Schedulers.io()) //新建一个io线程
.unsubscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread()) //在Android主线程中处理
.subscribe(observer);
}
这样在每次调用的使用,就不用每次重复写了
public void getActivityFreight(RequestBody map, Observer observer){
Observable observable = apiService.getActivityFreight(map);
toSubscribe(observable, observer);
}
我们来看一下Observable中subscribeOn和observeOn有啥区别
subscribeOn
指定一个观察者在哪个调度器上观察这个Observable
observeOn
指定的是Observable自身在哪个调度器上执行
如代码中所示:
subscribeOn(Schedulers.io())
在io线程中请求网络
observeOn(AndroidSchedulers.mainThread())