RxJava লাইব্রেরি

RxJava হল একটি রিঅ্যাক্টিভ প্রোগ্রামিং লাইব্রেরি যা অ্যাসিঙ্ক্রোনাস এবং ইভেন্ট-ভিত্তিক প্রোগ্রাম কম্পোজ করার জন্য পর্যবেক্ষণযোগ্য সিকোয়েন্স ব্যবহার করে।

Maps Rx লাইব্রেরি আপনাকে Android-এর জন্য Maps SDK এবং Android-এর জন্য Places SDK-তে অ্যাসিঙ্ক্রোনাস ইভেন্টের জন্য পর্যবেক্ষণযোগ্য সিকোয়েন্স পেতে দেয় যাতে আপনি RxJava ফিচারের সমৃদ্ধ সেটের সুবিধা নিতে পারেন।

ইনস্টল করা

আপনার Google Maps প্রোজেক্টে Maps Rx লাইব্রেরি ইনস্টল করতে:

  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-তে আপনার প্রোজেক্ট আবার তৈরি করুন।

ব্যবহারের উদাহরণ

GoogleMap অবজেক্টে এক্সটেনশন ফাংশন হিসেবে মার্কার ক্লিক ইভেন্টের জন্য Observable পান:

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
}

এর পরে কী করতে হবে