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

การดึงข้อมูล 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. โคลนหรือดาวน์โหลดไฟล์ 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 สำหรับ Map SDK ของ ไลบรารียูทิลิตีของ Android
  • KTX สำหรับ Places SDK สำหรับ Android