Thư viện RxJava

RxJava là một thư viện lập trình phản ứng để soạn các chương trình không đồng bộ và dựa trên sự kiện bằng cách bằng cách sử dụng chuỗi quan sát được.

Thư viện Maps Rx cho phép bạn nhận các trình tự có thể quan sát được cho các sự kiện không đồng bộ trên SDK Maps dành cho Android và SDK Địa điểm dành cho Android để bạn có thể tận dụng bộ tính năng phong phú của RxJava.

Cài đặt

Cách cài đặt thư viện Maps Rx trong dự án Google Maps:

  1. Thêm các phần phụ thuộc sau vào tệp build.gradle ở cấp mô-đun:

    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. Hãy tạo lại dự án trong Android Studio để đồng bộ hoá những thay đổi này.

Ví dụ về cách sử dụng

Nhận một đối tượng Có thể quan sát cho các sự kiện nhấp chuột vào điểm đánh dấu dưới dạng một hàm tiện ích trên đối tượng GoogleMap:

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

Ví dụ tiếp theo cho bạn biết cách sử dụng toán tử RxJava, merge, để kết hợp các sự kiện khác nhau trên camera vào một luồng Có thể quan sát:

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

Các bước tiếp theo