کتابخانه RxJava

‫RxJava یک کتابخانه برنامه‌نویسی واکنشی برای ترکیب برنامه‌های ناهمگام و مبتنی بر رویداد بااستفاده از توالی‌های قابل‌مشاهده است.

کتابخانه Maps Rx به شما امکان می‌دهد توالی‌های قابل‌مشاهده را برای رویدادهای ناهمگام در کیت توسعه نرم‌افزار Maps ویژه Android و کیت توسعه نرم‌افزار Places ویژه Android دریافت کنید تا بتوانید از مجموعه غنی ویژگی‌های RxJava بهره ببرید.

نصب

برای نصب کتابخانه Maps Rx در پروژه Google Maps:

  1. وابستگی‌های زیر را به فایل build.gradle سطح ماژول خود اضافه کنید:

        dependencies {
        // RxJava bindings for the Maps SDK
        implementation(libs.maps.rx)
    
        // RxJava bindings for the Places SDK
        implementation(libs.places.rx)
    
        // 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:20.0.0")
        implementation("com.google.android.libraries.places:places:5.3.0")
        implementation("io.reactivex.rxjava3:rxjava:3.1.12")

  2. پروژه‌تان را در Android Studio بازسازی کنید تا این تغییرات همگام‌سازی شود.

نمونه استفاده

دریافت Observable برای رویدادهای کلیک نشانگر به‌عنوان تابع افزونه در شیء GoogleMap:

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

از اپراتور merge RxJava برای ترکیب رویدادهای مختلف دوربین در یک Observable جریان استفاده کنید:

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

قدم بعدی چیست