1
我发现使用RxJava的很好的例子在this article:Retrofit是否支持rx.Future/Task/Async/Single?
Subscription subscription = Single.create(new Single.OnSubscribe() {
@Override
public void call(SingleSubscriber singleSubscriber) {
String value = longRunningOperation();
singleSubscriber.onSuccess(value);
}
})
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Action1() {
@Override
public void call(String value) {
// onSuccess
Snackbar.make(rootView, value, Snackbar.LENGTH_LONG).show();
}
}, new Action1() {
@Override
public void call(Throwable throwable) {
// handle onError
}
});
但自从我使用改装我想创建RetrofitService并使用单一类结果组合两个请求到后端到一个数据集,如下所述:
当订阅Single时,只有onSuccess Action和onError操作。 Single类具有不同于 Observable的一组操作符,其中有几个操作符允许将单个元素转换为Observable的机制。例如,使用 Single.mergeWith()运算符,可以将两个或多个相同类型的Singles合并在一起以创建一个Observable,并将每个Single的结果发送到一个Observable。
是否有可能实现这个(以及如何)?