This repository contains RxJava bindings for the Maps SDK for Android and Places SDK for Android
- API level 24+
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:<insert-latest-version>'
implementation 'com.google.android.libraries.places:places:<insert-latest-version>'
implementation 'io.reactivex.rxjava3:rxjava:<insert-latest-version>'
}
val googleMap = // ...
googleMap.markerClicks()
.subscribe { marker ->
Log.d("DEBUG", "Marker ${marker.title} was clicked")
}
val googleMap = // ...
merge(
googleMap.cameraIdleEvents(),
googleMap.cameraMoveEvents(),
googleMap.cameraMoveCanceledEvents(),
googleMap.cameraMoveStartedEvents()
).subscribe {
// Notified when one of the events triggered here
}
val placesClient = // ...
placesClient.fetchPlace(
placeId = "thePlaceId",
placeFields = listOf(Place.Field.ID, Place.Field.NAME, Place.Field.ADDRESS)
).subscribe {
// Notified when fetch completes/fails
}
You can learn more about all the extensions provided by this library by reading the reference documents.
Encounter an issue while using this library?
If you find a bug or have a feature request, please file an issue. Or, if you'd like to contribute, send us a pull request and refer to our code of conduct.
You can also reach us on our Discord channel.
For more information, check out the detailed guide on the Google Developers site.