Library RxJava

RxJava adalah library pemrograman reaktif untuk menulis program asinkron dan berbasis peristiwa menggunakan urutan yang dapat diamati.

Library Maps Rx memungkinkan Anda menerima observable sequence untuk peristiwa asinkron di Maps SDK for Android dan Places SDK for Android agar dapat memanfaatkan beragam fitur RxJava.

Penginstalan

Untuk menginstal library Maps Rx di project Google Maps Anda:

  1. Tambahkan dependensi berikut ke file build.gradle tingkat modul:

    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.4.0'
        implementation 'io.reactivex.rxjava3:rxjava:3.1.8'
    
  2. Build ulang project Anda di Android Studio untuk menyinkronkan perubahan ini.

Contoh Penggunaan

Menerima Observable untuk peristiwa klik penanda sebagai fungsi ekstensi di objek GoogleMap:

googleMap.markerClickEvents()
  .subscribe { marker ->
    Log.d("MapsRx", "Marker ${marker.title} was clicked")
  }

Contoh berikutnya menunjukkan cara menggunakan operator RxJava, merge, untuk menggabungkan berbagai peristiwa kamera ke dalam satu aliran data Observable:

Observable.merge(
  googleMap.cameraIdleEvents(),
  googleMap.cameraMoveEvents(),
  googleMap.cameraMoveCanceledEvents(),
  googleMap.cameraMoveStartedEvents()
).subscribe {
  // Notified when any camera event occurs
}

Langkah berikutnya