แผนที่ Android KTX

ส่วนขยาย 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 ได้ เช่น ฟังก์ชันส่วนขยาย พารามิเตอร์ที่มีชื่อและอาร์กิวเมนต์เริ่มต้น การประกาศการแยกโครงสร้าง และโคโริวทีน

การดึงข้อมูล 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 ในแอปของคุณเองด้วย

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

  1. โคลนหรือดาวน์โหลดไฟล์ ZIP จาก GitHub
  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
  • KTX สำหรับ Places SDK สำหรับ Android