Thư viện RxJava

RxJava là một thư viện lập trình phản ứng dù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 sử dụng các trình tự có thể quan sát.

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 tập hợp 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:18.2.0"
        implementation 'com.google.android.libraries.places:places:3.4.0'
        implementation 'io.reactivex.rxjava3:rxjava:3.1.8'
    
  2. Tạo lại dự án của bạn trong Android Studio để đồng bộ hoá các thay đổi này.

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

Nhận một Quan sát được cho các sự kiện nhấp vào điểm đánh dấu dưới dạng hàm mở rộng 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 nhiều sự kiện máy ảnh thành một luồng có thể quan sát được:

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

Các bước tiếp theo