ম্যাপস অ্যান্ড্রয়েড কোটলিন এক্সটেনশন (KTX) হলো অ্যান্ড্রয়েডের জন্য ম্যাপস এসডিকে এবং ম্যাপস এসডিকে ইউটিলিটি লাইব্রেরির জন্য কোটলিন এক্সটেনশনের একটি সংগ্রহ। এই এক্সটেনশনগুলো কোটলিন ভাষার এমন সব ফিচার প্রদান করে, যা আপনাকে অ্যান্ড্রয়েডের জন্য ম্যাপস এসডিকে ব্যবহার করে ডেভেলপ করার সময় সংক্ষিপ্ত এবং প্রচলিত রীতি অনুযায়ী কোটলিন কোড লিখতে সক্ষম করে। ম্যাপস KTX ওপেন-সোর্স এবং উদাহরণসহ গিটহাবে উপলব্ধ।
ইনস্টলেশন
অ্যান্ড্রয়েডের জন্য ম্যাপস এসডিকে (Maps SDK for Android) এবং ঐচ্ছিকভাবে অ্যান্ড্রয়েডের জন্য ম্যাপস এসডিকে ইউটিলিটি লাইব্রেরি (Maps SDK for Android Utility Library)-এর জন্য KTX ইনস্টল করতে, আপনার build.gradle.kts ফাইলে নিম্নলিখিত ডিপেন্ডেন্সিগুলো যোগ করুন।
dependencies { // KTX for the Maps SDK for Android library implementation(libs.maps.ktx) }
উদাহরণ ব্যবহার
KTX লাইব্রেরির সাহায্যে আপনি কোটলিন ভাষার বিভিন্ন বৈশিষ্ট্য, যেমন এক্সটেনশন ফাংশন, নেমড প্যারামিটার ও ডিফল্ট আর্গুমেন্ট, ডিস্ট্রাকচারিং ডিক্লারেশন এবং কো-রুটিন ব্যবহার করতে পারেন।
কোরাউটিন ব্যবহার করে একটি গুগল ম্যাপ পুনরুদ্ধার করা
কো-রুটিন ব্যবহার করে GoogleMap অ্যাক্সেস করা যায়।
lifecycleScope.launch { lifecycle.repeatOnLifecycle(Lifecycle.State.CREATED) { val mapFragment: SupportMapFragment? = supportFragmentManager.findFragmentById(R.id.map) as? SupportMapFragment val googleMap: GoogleMap? = mapFragment?.awaitMap() } }
একটি মার্কার যোগ করা
addMarker() DSL-স্টাইলের মেথড ব্যবহার করে একটি মার্কার যোগ করা যায়।
val sydney = LatLng(-33.852, 151.211)
val marker = googleMap.addMarker {
position(sydney)
title("Marker in Sydney")
}ক্যামেরা ইভেন্ট সংগ্রহ করা
ক্যামেরা মুভের মতো ইভেন্টগুলো কোটলিন ফ্লো (Kotlin Flow) এর মাধ্যমে সংগ্রহ করা যায়।
lifecycleScope.launch { lifecycle.repeatOnLifecycle(Lifecycle.State.CREATED) { googleMap.cameraMoveEvents().collect { print("Received camera move event") } } }
রেফারেন্স ডকুমেন্টেশন পড়ে আপনি সমর্থিত ফিচারগুলোর সম্পূর্ণ তালিকা দেখতে পারেন।
নমুনা অ্যাপ্লিকেশনটি ব্যবহার করে দেখুন
এই লাইব্রেরির গিটহাব রিপোজিটরিতে একটি ডেমো অ্যাপ্লিকেশনও রয়েছে, যা দেখায় কীভাবে আপনি আপনার নিজের অ্যাপে Maps KTX লাইব্রেরিটি ব্যবহার করতে পারেন।
ডেমো অ্যাপ্লিকেশনটি ব্যবহার করে দেখতে, এই ধাপগুলো অনুসরণ করুন:
- গিটহাব থেকে জিপ ফাইলটি ক্লোন করুন অথবা ডাউনলোড করুন।
- অ্যান্ড্রয়েড স্টুডিওতে, ফাইল -> ওপেন নির্বাচন করুন এবং ডিরেক্টরিতে গিয়ে আপনার সদ্য ক্লোন বা ডাউনলোড করা ফোল্ডারটি খুলুন।
- ডেমো অ্যাপে একটি এপিআই কী যোগ করুন।
- অ্যান্ড্রয়েডের জন্য একটি ম্যাপস এসডিকে কী (Maps SDK for Android key) সংগ্রহ করুন ।
- রুট ডিরেক্টরিতে
secrets.propertiesনামে একটি ফাইল তৈরি করুন। আপনার API কী সুরক্ষিত রাখতে এই ফাইলটি ভার্সন কন্ট্রোলের অধীনে থাকা উচিত নয়। -
secrets.propertiesএ এই একটি লাইন যোগ করুন যেখানেMAPS_API_KEY="YOUR_API_KEY"
YOUR_API_KEYহলো সেই আসল এপিআই কী যা আপনি প্রথম ধাপে পেয়েছিলেন। আপনি উদাহরণ হিসেবেsecrets.defaults.propertiesফাইলটি দেখতে পারেন। - রান কনফিগারেশনের অধীনে, app-ktx মডিউলটি নির্বাচন করুন।
- 'app-ktx' রান নির্বাচন করুন।
এরপর কী?
গুগল ম্যাপস প্ল্যাটফর্মের জন্য অন্যান্য কোটলিন এক্সটেনশন লাইব্রেরিগুলোতেও আপনার আগ্রহ থাকতে পারে:
- অ্যান্ড্রয়েড ইউটিলিটি লাইব্রেরির জন্য ম্যাপ এসডিকে-এর জন্য KTX
- অ্যান্ড্রয়েডের জন্য প্লেসেস এসডিকে-এর জন্য কেটিএক্স