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:
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")
- 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
- Xem thư viện Maps Rx trang dự án GitHub.
- Xem tài liệu tham khảo về API của thư viện Maps Rx.