Saya sangat baru mengenal Android dan saya butuh bantuan. Saya perlu mendapatkan restoran di dekat pengguna, dan menampilkan informasinya dalam tampilan pendaur ulang. Jadi saya menggunakan Places api: terdekat dan detailnya. Saya memiliki dua permintaan, satu yang mengambil satu daftar restoran terdekat pengguna (saya mengambil satu objek yang berisi daftar objek restoran, saya menyimpannya dalam array objek restoran) Dan satu lagi yang mengambil detail setiap restoran yang ditemukan oleh permintaan pertama (membutuhkan id tempat agar berfungsi, ditemukan dengan permintaan pertama). Masalahnya adalah permintaan tidak dieksekusi dalam urutan yang baik, sehingga tampilan pendaur ulang saya tidak ditampilkan dengan baik. Saya mungkin harus merangkai permintaan saya agar hanya memiliki satu? Saya melakukan riset tetapi saya tidak dapat menemukan cara melakukannya, karena saya perlu membuat permintaan kedua untuk setiap restoran yang ditemukan di permintaan pertama.
Ini aliran saya
Bagaimana cara membuat satu streaming dengan mereka?
private static PlacesService placesService = PlacesService.retrofit.create(PlacesService.class);
public static Observable<RestaurantObject> streamFetchRestaurants(String latitudeLongitude, int radius, String type, String apiKey) {
return placesService.getRestaurants(latitudeLongitude,radius,type, apiKey)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.timeout(10, TimeUnit.SECONDS);
}
public static Observable<RestaurantInformationObject> streamFetchRestaurantInfos(String id, String apikey) {
return placesService.getRestaurantInfo(id, apikey)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.timeout(10, TimeUnit.SECONDS);
}