Biblioteca RxJava

RxJava é uma biblioteca de programação reativa para criar programas assíncronos e com base em eventos usando sequências observáveis.

A biblioteca Places Rx permite receber sequências observáveis de eventos assíncronos no SDK do Maps para Android e o SDK do Places para Android, para que você possa aproveitar o conjunto avançado de recursos do RxJava.

Instalação

Para instalar a biblioteca Places Rx no seu projeto do Google Maps:

  1. Adicione as seguintes dependências ao arquivo build.gradle do 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")
    
  2. Recrie seu projeto no Android Studio para sincronizar essas mudanças.

Exemplo de uso

O exemplo a seguir mostra como receber Solteiro, e se inscrever nele ao buscar detalhes do 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}")
    }
  )
}

A seguir