simple code like this, just test exception at onNext method.
onError method not called and no any crash message.
Observable.merge(Observable.create(new ObservableOnSubscribe<Integer>() {
@Override
public void subscribe(ObservableEmitter<Integer> emitter) throws Exception {
emitter.onNext(1);
emitter.onNext(2);
emitter.onComplete();
}
}), Observable.create(new ObservableOnSubscribe<Integer>() {
@Override
public void subscribe(ObservableEmitter<Integer> emitter) throws Exception {
emitter.onNext(3);
emitter.onNext(4);
emitter.onComplete();
}
}))
.subscribeOn(Schedulers.io())
.subscribe(new Observer<Integer>() {
@Override
public void onSubscribe(Disposable d) {
}
@Override
public void onNext(Integer integer) {
Log.d("print", "onNext-" + integer);
throw new RuntimeException("Test onNext exception");
}
@Override
public void onError(Throwable e) {
Log.d("print", "onError-" + e);
}
@Override
public void onComplete() {
Log.d("print", "onComplete");
}
});
simple code like this, just test exception at onNext method.
onError method not called and no any crash message.