我试图在使用RxJava进行虚假下载期间强行引发错误:
disposable.add(fakeRepo.downloadSomething()
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(
{ a: String -> finished() },
{ b: Throwable? -> showError() }
))
fun downloadSomething(): Single<String> {
return Single.just("")
}
我只能通过onNext找到解决方案,但是我不想在我的代码中找到它。
我应该怎么做才能调用showError()
?
目前,我总是得到finished()
答案 0 :(得分:1)
只需使用Single.error
:
http://reactivex.io/RxJava/javadoc/io/reactivex/Single.html#error-java.lang.Throwable-
公共静态单个错误(可抛出异常) 返回一个Single,当订阅者订阅时,该Single会调用订阅者的onError方法。