Я разрабатываю приложение для Android.
Я хочу показать два значения в пользовательском интерфейсе.Значения извлекаются с сервера API, и я использую Retrofit для их получения.
Вот мой интерфейс ApiService (Retrofit):
interface ApiService {
@Get
fun getData1(): Observable<String>
@Get
fun getData2(): Observable<String>
}
И ниже мой код Presenter:
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 ().
Я хочу отправить их одновременно.
Как я могу это сделать?