【发布时间】:2019-07-21 21:58:45
【问题描述】:
我正在开发一个 Android 应用程序。
我想在 UI 中显示两个值。 这些值是从 API Server 检索的,我正在使用 Retrofit 来获取它们。
这是我的 ApiService 接口(改造):
interface ApiService {
@Get
fun getData1(): Observable<String>
@Get
fun getData2(): Observable<String>
}
下面是我的演示者代码:
val data1 = apiService.getData1().map { "d1" to it }
val data2 = apiService.getData1().map { "d2" to it }
Observable.just(data1, data2)
.flatMap { it }
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe { (type, data) ->
when (type) {
"d1" -> view.showData1(data)
"d2" -> view.showData2(data)
}
}
它工作正常。 但这是按顺序工作的。 第一个请求“getData1()”完成后,发送第二个请求“getData2()”。
我想同时发送它们。
我该怎么做?
【问题讨论】:
标签: android kotlin retrofit rx-java