当您收到此错误消息时:
rx.exceptions.OnErrorFailedException:尝试将错误传播到Observer.onError时发生错误,
但是您的订阅已经在处理onError。
rx.exceptions.OnErrorFailedException:尝试将错误传播到Observer.onError时发生错误,
但是您的订阅已经在处理onError。
MyMethodThatRetunsAnObservable(string)
.subscribe(
response -> handleResponse(response),
throwable -> handleError(throwable));
如果是由于 java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare() 引起的,需注意 onError 通知会在真正异步的调度器上优先于 onNext 通知到达发射线程。 因此,需要指定我们要观察的 UI 线程。
public static void shortToast(String msg) {
Observable.just(msg)
.subscribeOn(AndroidSchedulers.mainThread())
.subscribe(message -> {
Toast.makeText(App.getInstance(), message, Toast.LENGTH_SHORT).show();
});
}