本文介绍了改造&RxJava 多个请求完成的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我需要做的:
- 请求 2 个来自不同网站的新闻列表
- 合并请求的结果
- 按日期对项目进行排序
- 获取 10 条最新消息
- 保存它们
- 显示完整的消息
例如,我有这两个 observables:
For example, I have this two observables:
Observable<RegionalNews> regionalNews;
Observable<NationalNews> nationalNews;
public interface NewsNationalService {
@GET("news/national")
Observable<News> getNationalNews();
}
public interface NewsRegionalService {
@GET("news/regional")
Observable<News> getRegionalNews();
}
推荐答案
如果你不想对组合的结果做一些特定的事情,那么 merge() 就足够了:
If you don't want to do something specific with the combined results, then merge() is enough:
Observable<RegionalNews> regionalNews = ...;
Observable<NationalNews> nationalNews = ...;
Observable
.merge(regionalNews, nationalNews)
.ignoreElements()
.observeOn(AndroidSchedulers.mainThread())
.doOnComplete(() -> { /* show alert */ })
.subscribe()
这篇关于改造&RxJava 多个请求完成的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!