Bibliothèque RxJava

RxJava est une bibliothèque de programmation réactive qui permet de rédiger des programmes asynchrones et basés sur des événements à l'aide de séquences observables.

La bibliothèque Places Rx vous permet de recevoir des séquences observables pour les événements asynchrones dans le SDK Maps pour Android et dans le SDK Places pour Android. Vous pouvez ainsi profiter de l'ensemble complet des fonctionnalités RxJava.

Installation

Pour installer la bibliothèque Places Rx dans votre projet Google Maps:

  1. Ajoutez les dépendances suivantes à votre fichier build.gradle au niveau du module :

    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:18.2.0"
        implementation 'com.google.android.libraries.places:places:3.3.0'
        implementation 'io.reactivex.rxjava3:rxjava:3.1.8'
    
  2. Recréez votre projet dans Android Studio pour synchroniser ces modifications.

Exemple d'utilisation

L'exemple suivant montre comment recevoir un Single et vous y abonner lors de la récupération des informations sur le lieu:

  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}")
    }
  )
}

Étapes suivantes