ส่วนขยาย Kotlin สำหรับ Android (KTX) สำหรับ Maps คือชุดส่วนขยายของ Kotlin ใน Maps SDK สำหรับ Android และ Maps SDK สำหรับไลบรารียูทิลิตีของ Android ส่วนขยายเหล่านี้มีฟีเจอร์ภาษา Kotlin ที่ช่วยให้คุณเขียน Kotlin ได้กระชับและเป็นธรรมชาติเมื่อพัฒนาแอปสำหรับ Maps SDK สำหรับ Android Maps KTX เป็นโอเพนซอร์สและพร้อมให้บริการบน GitHub พร้อมตัวอย่าง
การติดตั้ง
หากต้องการติดตั้ง KTX สำหรับ Maps SDK สำหรับ Android และสำหรับไลบรารียูทิลิตีของ Maps SDK สำหรับ Android (ไม่บังคับ) ให้เพิ่มทรัพยากร Dependency ต่อไปนี้ลงในไฟล์ build.gradle.kts
dependencies { // KTX for the Maps SDK for Android library implementation("com.google.maps.android:maps-ktx:5.1.1") }
ตัวอย่างการใช้งาน
เมื่อใช้ไลบรารี KTX คุณจะใช้ประโยชน์จากฟีเจอร์ต่างๆ ของภาษา Kotlin ได้ เช่น ฟังก์ชันส่วนขยาย พารามิเตอร์ที่มีชื่อและอาร์กิวเมนต์เริ่มต้น การประกาศการแยกโครงสร้าง และโคโริวทีน
การดึงข้อมูล GoogleMap โดยใช้ coroutine
การเข้าถึง GoogleMap
สามารถดึงข้อมูลได้โดยใช้โคโริวทีน
lifecycleScope.launch { lifecycle.repeatOnLifecycle(Lifecycle.State.CREATED) { val mapFragment: SupportMapFragment? = supportFragmentManager.findFragmentById(R.id.map) as? SupportMapFragment val googleMap: GoogleMap? = mapFragment?.awaitMap() } }
การเพิ่มเครื่องหมาย
การเพิ่มเครื่องหมายทำได้โดยใช้เมธอดสไตล์ DSL addMarker()
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") } } }
คุณดูรายการฟีเจอร์ที่รองรับทั้งหมดได้โดยอ่านเอกสารอ้างอิง
ลองใช้แอปพลิเคชันตัวอย่าง
ที่เก็บข้อมูล GitHub สำหรับไลบรารีนี้ยังมีแอปพลิเคชันสาธิตที่แสดงวิธีใช้ไลบรารี KTX ของ Maps ในแอปของคุณเองด้วย
หากต้องการลองใช้แอปพลิเคชันเดโม ให้ทำตามขั้นตอนต่อไปนี้
- โคลนหรือดาวน์โหลดไฟล์ ZIP จาก GitHub
- ใน Android Studio ให้เลือกไฟล์ -> เปิด แล้วไปที่ไดเรกทอรีและเปิดโฟลเดอร์ที่คุณเพิ่งโคลนหรือดาวน์โหลด
- เพิ่มคีย์ API ลงในแอปเดโม
- ดาวน์โหลดคีย์ Maps SDK สำหรับ Android
- ในไดเรกทอรีรูท ให้สร้างไฟล์ชื่อ
secrets.properties
ไฟล์นี้ไม่ควรอยู่ภายใต้การควบคุมเวอร์ชันเพื่อปกป้องคีย์ API ของคุณ - เพิ่มบรรทัดเดียวนี้ลงใน
secrets.properties
โดยที่MAPS_API_KEY="YOUR_API_KEY"
YOUR_API_KEY
คือคีย์ API จริงที่คุณได้รับในขั้นตอนแรก คุณดูตัวอย่างsecrets.defaults.properties
ได้ - ภายใต้การกำหนดค่าการเรียกใช้ ให้เลือกโมดูล app-ktx
- เลือกเรียกใช้ "app-ktx"
ขั้นตอนถัดไป
คุณอาจสนใจไลบรารีส่วนขยาย Kotlin อื่นๆ สำหรับแพลตฟอร์ม Google Maps ดังนี้