1
我有要完成的任务序列,如果它们中的任何一个抛出异常想继续下一个任务。继续下一步Observable onError
但是在这个实现中,如果第一个REST调用失败,它会在订户中引发onError。
想知道什么是最好的运营商使用或我需要调用一些其他功能,使其恢复异常。
private void logout() {
// Observable from Retrofit to make logout service call
requestLogout()
.doOnNext(o -> {
clearNotifications();
})
.doOnNext(o -> {
unregisterGcm();
})
.doOnNext(o -> {
clearLocalData();
})
.doOnNext(o -> {
// clear all jobs
mJobManager.clear();
})
.subscribeOn(Schedulers.newThread())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Subscriber<Object>() {
@Override
public void onCompleted() {
// no op
}
@Override
public void onError(Throwable e) {
mView.navigateToLogin();
}
@Override
public void onNext(Object o) {
mView.navigateToLogin();
}
});
}
也许['onErrorResumeNext'](https://github.com/ReactiveX/RxJava/wiki/Error-Handling-Operators) –