ส่วนขยาย Kotlin ของ Maps สำหรับ Android (KTX) คือคอลเล็กชันส่วนขยาย 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 ได้ เช่น ฟังก์ชันการขยาย พารามิเตอร์ที่มีชื่อและอาร์กิวเมนต์เริ่มต้น การประกาศการแยกโครงสร้าง และโคโริวทีน
การดึงข้อมูล Google Maps โดยใช้โครูทีน
การเข้าถึง 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 สำหรับไลบรารีนี้ยังมีแอปพลิเคชันเดโมด้วย ซึ่งแสดงวิธีใช้ไลบรารี Maps KTX ในแอปของคุณเอง
หากต้องการลองใช้แอปพลิเคชันเดโม ให้ทำตามขั้นตอนต่อไปนี้
- โคลนหรือดาวน์โหลดไฟล์ 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 ด้วย แพลตฟอร์ม: