RxJava es una biblioteca de programación reactiva diseñada para componer programas asíncronos y basados en eventos mediante el uso de secuencias observables.
La biblioteca de Places Rx te permite recibir secuencias observables para eventos asíncronos en el SDK de Maps para Android y el SDK de Places para Android, de modo que puedas aprovechar el amplio conjunto de funciones de RxJava.
Instalación
Para instalar la biblioteca de Places Rx en tu proyecto de Google Maps, sigue estos pasos:
Agrega las siguientes dependencias a tu archivo
build.gradle
a nivel del módulo:dependencies { // RxJava bindings for the Maps SDK implementation("com.google.maps.android:maps-rx:1.0.0") // RxJava bindings for the Places SDK implementation("com.google.maps.android:places-rx:1.0.0") // It is recommended to also include the latest Maps SDK, Places SDK and RxJava so you // have the latest features and bug fixes. implementation("com.google.android.gms:play-services-maps:19.0.0") implementation("com.google.android.libraries.places:places:3.5.0") implementation("io.reactivex.rxjava3:rxjava:3.1.8")
- Vuelve a compilar tu proyecto en Android Studio para sincronizar estos cambios.
Ejemplo de uso
En el siguiente ejemplo, se muestra cómo puedes recibir un Único, y suscribirte a él cuando recuperes detalles del lugar:
placesClient.fetchPlace( placeId = "thePlaceId", placeFields = listOf(Place.Field.ID, Place.Field.NAME, Place.Field.ADDRESS), actions = {} ).subscribe( { response -> Log.d("PlacesRx", "Successfully got place ${response.place.id}") }, { error -> Log.e("PlacesRx", "Could not get place: ${error.message}") } ) }
¿Qué sigue?
- Consulta la biblioteca de Places Rx. Página del proyecto de GitHub
- Consulta la referencia de la API de la biblioteca de Places Rx.