RxJava ist eine reaktive Programmierbibliothek zum Erstellen asynchroner und ereignisbasierter Programme mithilfe von beobachtbaren Sequenzen.
Mit der Maps Rx-Bibliothek erhalten Sie beobachtbare Sequenzen für asynchrone Ereignisse im Maps SDK for Android und Places SDK for Android. So profitieren Sie von allen RxJava-Funktionen.
Installation
So installieren Sie die Maps Rx-Bibliothek in Ihrem Google Maps-Projekt:
Fügen Sie der Datei
build.gradle
auf Modulebene die folgenden Abhängigkeiten hinzu: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'
- Erstellen Sie Ihr Projekt in Android Studio neu, um die Änderungen zu synchronisieren.
Verwendungsbeispiel
Beobachtbare Sequenz für Markierungs-Klickereignisse als Erweiterungsfunktion für das GoogleMap-Objekt erhalten:
googleMap.markerClickEvents() .subscribe { marker -> Log.d("MapsRx", "Marker ${marker.title} was clicked") }
Im nächsten Beispiel wird gezeigt, wie Sie mit dem RxJava-Operator merge
verschiedene Kameraereignisse in einem gemeinsamen Stream für beobachtbare Sequenzen zusammenführen können:
Observable.merge( googleMap.cameraIdleEvents(), googleMap.cameraMoveEvents(), googleMap.cameraMoveCanceledEvents(), googleMap.cameraMoveStartedEvents() ).subscribe { // Notified when any camera event occurs }
Weiteres Vorgehen
- Sehen Sie sich die GitHub-Projektseite zur Maps Rx-Bibliothek an.
- Sehen Sie sich die API-Referenz zur Maps Rx-Bibliothek an.