【发布时间】:2016-02-13 16:45:23
【问题描述】:
谁能解释一下为什么这样的代码:
networApi.getList()
.subscribeOn(Schedulers.newThread())
.observeOn(AndroidSchedulers.mainThread())
.doOnError(throwable -> {
throwable.getMessage();
})
.doOnNext(list -> {
coursesView.populateRecyclerView(list);
courseList = (List<Course>) courses;
}).subscribe();
如果没有互联网进入 doOnError 但进一步抛出它使应用程序崩溃,但代码如下:
networkApi.getList()
.subscribeOn(Schedulers.newThread())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Subscriber<List<? extends Course>>() {
@Override
public void onCompleted() {
}
@Override
public void onError(Throwable e) {
e.getMessage();
}
@Override
public void onNext(List<? extends Course> list) {
coursesView.populateRecyclerView(list);
courseList = (List<Course>) list;
}
});
按照我的预期工作,这意味着当没有互联网连接时它什么也不做。
【问题讨论】:
标签: android retrofit rx-java rx-android subscriber