在我的RxJava流中,如果发生异常,我想访问导致异常的项目。例如,
val msgToSendPublisher = PublishSubject.create<MessageToSend>()
msgToSendPublisher.flatMap { _ -> App.context.repository.getMessageToSend() }
.onErrorReturnItem { item ->
item
}
.flatMap { connections ->
App.context.repository.storeConnections(connections)
}
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(
{ connectionDetails ->
},
{ ex ->
},
{
onConnectionsRetrieved()
}
)
在onErrorReturnItem中,我想访问MessageToSend对象,但这似乎是不可能的。还有其他RxJava运算符可让我捕获异常并引用发出的对象吗?