RxJava è una libreria di programmazione reattiva per comporre programmi asincroni e basati su eventi utilizzando sequenze osservabili.
La libreria Places Rx ti consente di ricevere sequenze osservabili per eventi asincroni su Maps SDK for Android e Places SDK for Android, in modo da poter sfruttare il ricco set di funzionalità di RxJava.
Installazione
Per installare la libreria Places Rx nel tuo progetto Google Maps:
Aggiungi le seguenti dipendenze al file
build.gradlea livello di modulo:dependencies { // RxJava bindings for the Maps SDK implementation(libs.maps.rx) // RxJava bindings for the Places SDK implementation(libs.places.rx) // 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:20.0.0") implementation("com.google.android.libraries.places:places:5.3.0") implementation("io.reactivex.rxjava3:rxjava:3.1.12")
Ricompila il progetto in Android Studio per sincronizzare queste modifiche.
Esempio di utilizzo
Ricevi un singolo e abbonati quando recuperi i dettagli del luogo:
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}") } ) }
Passaggi successivi
- Consulta la pagina del progetto GitHub della libreria Places Rx.
- Consulta il riferimento API della libreria Places Rx.