แผนที่ Android KTX

ส่วนขยาย 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

dependencies {

    // KTX for the Maps SDK for Android library
    implementation 'com.google.maps.android:maps-ktx:5.0.0'
}

ตัวอย่างการใช้งาน

ไลบรารี 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 ในแอปของคุณเอง

หากต้องการลองใช้แอปพลิเคชันเดโม ให้ทำตามขั้นตอนต่อไปนี้

  1. จาก GitHub ให้โคลนหรือดาวน์โหลดไฟล์ ZIP
  2. ใน Android Studio ให้เลือกไฟล์ -> เปิด แล้วไปที่ไดเรกทอรีและเปิดโฟลเดอร์ที่คุณเพิ่งโคลนหรือดาวน์โหลดไป
  3. เพิ่มคีย์ API ลงในแอปเดโม
    1. ดาวน์โหลดคีย์ Maps SDK สำหรับ Android
    2. ในไดเรกทอรีราก ให้สร้างไฟล์ชื่อ secrets.properties ไฟล์นี้ไม่ควรอยู่ภายใต้การควบคุมเวอร์ชันเพื่อปกป้องคีย์ API ของคุณ
    3. เพิ่มบรรทัดเดียวนี้ลงใน secrets.properties
      MAPS_API_KEY="YOUR_API_KEY"
      โดยที่ YOUR_API_KEY คือคีย์ API จริงที่คุณได้รับในขั้นตอนแรก คุณดูตัวอย่าง secrets.defaults.properties ได้
  4. ภายใต้การกำหนดค่าการเรียกใช้ ให้เลือกโมดูล app-ktx
  5. เลือกเรียกใช้ "app-ktx"

ขั้นตอนถัดไป

คุณอาจสนใจไลบรารีส่วนขยาย Kotlin อื่นๆ สำหรับแพลตฟอร์ม Google Maps ดังนี้

  • KTX สำหรับ Maps SDK สำหรับ Android Utility Library
  • KTX สำหรับ Places SDK สำหรับ Android