我一直遇到这种情况,我希望能够通过RxJava监听对请求的响应。问题是我不知道如何设置Observable,以便我正在侦听事件,并以正确的顺序在订阅上发送消息。我不想发送消息然后听,因为如果线程暂停或响应超快,我可能会错过它。这是我能想到上的最接近我自己收听并发送订阅RxJava
connection.onReceivedMessage()
.doOnSubscribe(() -> connection.send(message))
.filter(message -> message.id == id)
... // do stuff
或
Observable.defer(() -> {
connection.send(message);
return connection.onReceivedMessage();
})... // do stuff
但这些似乎仍像我仍然可以发送邮件,而不是被监听响应。有没有其他人试图做到这一点?我觉得我真的想要一种afterCreate()。
doOnSubscribe这样的作品?我将不得不进行更多的测试。我承认我从未做过单元测试来验证。 – Buttink