Maps SDK สำหรับ Android สามารถแสดงรูปภาพบิตแมปของแผนที่ ซึ่งจะให้ การโต้ตอบที่จำกัดแก่ผู้ใช้ ซึ่งเรียกว่าแผนที่โหมด Lite
ตัวอย่างโค้ด
ที่เก็บ ApiDemos ใน GitHub มีตัวอย่างที่แสดงการใช้โหมด Lite ดังนี้
- LiteDemoActivity - Java: ข้อมูลพื้นฐานเกี่ยวกับการใช้แผนที่โหมด Lite ใน Java
- LiteDemoActivity - Kotlin: พื้นฐานของการใช้แผนที่โหมด Lite ใน Kotlin
- LiteListDemoActivity - Java: แสดงแผนที่อย่างมีประสิทธิภาพใน ListView โดยใช้โหมด Lite ใน Java
- LiteListDemoActivity - Kotlin: แสดงแผนที่อย่างมีประสิทธิภาพใน ListView โดยใช้โหมด Lite ใน Kotlin
ภาพรวมของโหมด Lite
แผนที่โหมด Lite คือรูปภาพบิตแมปของแผนที่ ณ ตำแหน่งและระดับการซูมที่ระบุ โหมด Lite รองรับแผนที่ทุกประเภท (ปกติ ไฮบริด ดาวเทียม ภูมิประเทศ) และฟังก์ชันการทำงานบางส่วนที่ API แบบเต็มมีให้ โหมด Lite มีประโยชน์เมื่อคุณต้องการแสดงแผนที่หลายรายการในสตรีม หรือแผนที่ที่มีขนาดเล็กเกินไปจนไม่รองรับการโต้ตอบที่มีความหมาย
ผู้ใช้ที่ดูแผนที่จะซูมหรือเลื่อนแผนที่ไม่ได้ ไอคอนบนแผนที่จะช่วยให้ผู้ใช้เข้าถึงการดูแผนที่ในแอป Google Maps บนอุปกรณ์เคลื่อนที่และขอเส้นทางได้
การเพิ่มแผนที่โหมด Lite
โหมด Lite ใช้คลาสและอินเทอร์เฟซเดียวกันกับ Google Maps Android API แบบเต็ม
 คุณตั้งค่า GoogleMap เป็นโหมด Lite ได้ด้วยวิธีต่อไปนี้
- เป็นแอตทริบิวต์ XML สำหรับ MapViewหรือMapFragment
- หรือในออบเจ็กต์ GoogleMapOptions
เป็นแอตทริบิวต์ XML สำหรับ MapView หรือ MapFragment
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:map="http://schemas.android.com/apk/res-auto"
    android:name="com.google.android.gms.maps.MapFragment"
    android:id="@+id/map"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    map:cameraZoom="13"
    map:mapType="normal"
    map:liteMode="true"/>
ในออบเจ็กต์ GoogleMapOptions
Kotlin
val options = GoogleMapOptions() .liteMode(true)
Java
GoogleMapOptions options = new GoogleMapOptions() .liteMode(true);
ดูรายละเอียดเกี่ยวกับการตั้งค่าสถานะเริ่มต้นของแผนที่ได้ในคำแนะนำเกี่ยวกับออบเจ็กต์แผนที่
Intent เพื่อเปิดมุมมองแผนที่หรือคำขอเส้นทาง
โดยค่าเริ่มต้น แถบเครื่องมือที่ด้านขวาล่างของแผนที่จะมีไอคอนที่
ให้สิทธิ์เข้าถึงมุมมองแผนที่หรือคำขอเส้นทางในแอป Google Maps บนอุปกรณ์เคลื่อนที่
คุณปิดใช้แถบเครื่องมือได้โดยเรียกใช้
UiSettings.setMapToolbarEnabled(false) ดูรายละเอียดเพิ่มเติมได้ในเอกสารประกอบของแถบเครื่องมือ
นอกจากนี้ โดยค่าเริ่มต้นเมื่อผู้ใช้แตะแผนที่ API จะเริ่มแอป Google Maps บนอุปกรณ์เคลื่อนที่
 คุณสามารถลบล้างลักษณะการทำงานนี้ได้โดยใช้ GoogleMap.setOnMapClickListener() เพื่อ
ตั้งค่า Listener ของคุณเอง นอกจากนี้ คุณยังปิดใช้เหตุการณ์การคลิกบนแผนที่ได้โดยเรียกใช้
setClickable() ในมุมมองที่มี MapView หรือ MapFragment ดูรายละเอียดของเทคนิคทั้ง 2 นี้ได้ในเอกสารประกอบเกี่ยวกับเหตุการณ์
เหตุการณ์ในวงจร
เมื่อใช้ API ในโหมดอินเทอร์แอกทีฟอย่างเต็มรูปแบบ ผู้ใช้คลาส MapView
ต้องส่งต่อเมธอดวงจรของกิจกรรมทั้งหมดไปยังเมธอดที่เกี่ยวข้อง
ในคลาส MapView ตัวอย่างของเมธอดวงจร ได้แก่
onCreate(), onDestroy(), onResume() และ onPause()
เมื่อใช้คลาส MapView ในโหมด Lite การส่งต่อเหตุการณ์วงจรลูกค้าเป็น
ไม่บังคับ ยกเว้นในกรณีต่อไปนี้
- คุณต้องเรียกใช้ onCreate()มิฉะนั้นแผนที่จะไม่ปรากฏ
- หากต้องการแสดงจุดตำแหน่งของฉันในแผนที่โหมด Lite และใช้แหล่งที่มาของตำแหน่งเริ่มต้น คุณจะต้องเรียกใช้ onResume()และonPause()เนื่องจากแหล่งที่มาของตำแหน่งจะอัปเดตระหว่างการเรียกใช้เหล่านี้เท่านั้น หากคุณใช้แหล่งที่มาของตำแหน่งของคุณเอง ก็ไม่จำเป็นต้องเรียกใช้ 2 วิธีนี้
ฟีเจอร์ API ที่รองรับ
ตารางต่อไปนี้อธิบายลักษณะการทำงานของแผนที่โหมด Lite สำหรับแต่ละส่วนของฟังก์ชันการทำงานของ API หากแอปเรียกใช้เมธอดที่ไม่รองรับในโหมด Lite API จะบันทึกข้อความเตือน
| ฟังก์ชันการทำงาน | |
|---|---|
| ประเภทแผนที่ | รองรับไหม ใช่ ประเภทแผนที่ต่อไปนี้พร้อมใช้งานผ่าน  GoogleMapOptions.mapType()และGoogleMap.setMapType():MAP_TYPE_NORMAL,MAP_TYPE_SATELLITE,MAP_TYPE_TERRAIN,MAP_TYPE_HYBRID,MAP_TYPE_NONE | 
| เส้นประกอบ รูปหลายเหลี่ยม วงกลม | รองรับไหม ใช่ ฟังก์ชันการทำงานของโหมด Lite สำหรับ
      รูปร่างจะตรงกับ
      API แบบเต็ม | 
| การฉายภาพ | รองรับไหม ใช่ ฟังก์ชันการทำงานของโหมด Lite สำหรับการฉายภาพจะตรงกับ API แบบเต็ม | 
| ตำแหน่งของฉัน | รองรับไหม ใช่ ฟังก์ชันการทำงานของโหมด Lite สำหรับ
      เลเยอร์ตำแหน่งของฉัน
      จะตรงกับ API แบบเต็ม | 
| การเสริมพื้นที่ในแผนที่ | รองรับไหม ใช่ การรองรับโหมด Lite สำหรับ
      การเว้นขอบแผนที่
      จะตรงกับ API แบบเต็ม | 
| หน้าต่างข้อมูล | รองรับไหม ใช่ หากคุณตั้งค่า  title()ของเครื่องหมาย
      หน้าต่างข้อมูลเริ่มต้นจะ
      ปรากฏขึ้นเมื่อผู้ใช้แตะเครื่องหมาย คุณแสดงหน้าต่างข้อมูล
      แบบเป็นโปรแกรมได้โดยเรียกใช้showInfoWindow()ในเครื่องหมาย
      นอกจากนี้ คุณยังสร้างหน้าต่างข้อมูลที่กำหนดเองผ่านInfoWindowAdapterอินเทอร์เฟซได้ด้วย | 
| รูปแบบแผนที่ฐานที่กำหนดเอง | รองรับไหม บางส่วน Maps SDK สำหรับ Android รองรับการจัดรูปแบบที่กำหนดเองของ
    แผนที่ฐาน โหมด Lite รองรับเฉพาะการจัดรูปแบบที่กำหนดเองตาม JSON ไม่รองรับการจัดรูปแบบในระบบคลาวด์ซึ่งต้องใช้รหัสแผนที่ในการแสดงผลแผนที่ที่จัดรูปแบบ
    นอกจากนี้ โหมด Lite ยังไม่รองรับการตั้งค่า
    รูปแบบสีของแผนที่
    ให้ใช้โหมดมืดด้วย
 | 
| เครื่องหมาย | รองรับไหม บางส่วน คุณเพิ่มเครื่องหมาย
      และตอบสนองต่อเหตุการณ์การคลิกได้ นอกจากนี้ คุณยังเพิ่มไอคอนเครื่องหมายที่กำหนดเองได้ด้วย คุณไม่สามารถทำให้เครื่องหมายลากได้ เครื่องหมายใน
      แผนที่โหมด Lite จะแบนและหมุนไม่ได้ | 
| ตำแหน่งกล้อง การซูม และภาพเคลื่อนไหว | รองรับไหม บางส่วน คุณสามารถตั้งค่าเป้าหมายและซูมกล้องได้ แต่จะตั้งค่าการเอียงหรือการวางแนวไม่ได้
      ระบบจะปัดเศษระดับการซูมเป็นจำนวนเต็มที่ใกล้เคียงที่สุดในโหมด Lite
      การโทรหา  การโทรหา  | 
| จับคู่เหตุการณ์ | รองรับไหม บางส่วน โหมด Lite รองรับ
       หากต้องการปิดใช้กิจกรรมการคลิกบนแผนที่ในโหมด Lite คุณสามารถเรียกใช้
         ดูรายละเอียดได้ที่เอกสารประกอบเกี่ยวกับเหตุการณ์ | 
| แผนที่ในอาคารและอาคาร | รองรับไหม ไม่ โหมด Lite จะแสดงแผนที่แบบเดียวกันกับ
      Maps Static API
      ซึ่งหมายความว่าหากมีการฝังแปลนชั้นในอาคารลงในไทล์เริ่มต้น
      แปลนดังกล่าวจะปรากฏขึ้น มิฉะนั้นระบบจะไม่แสดง นอกจากนี้ คุณยังเปลี่ยนระดับ
      ที่แสดงหรือจัดการเครื่องมือเลือกเลเวลไม่ได้ | 
| เลเยอร์การจราจร | รองรับไหม ไม่ GoogleMap.setTrafficEnabled()ไม่รองรับในโหมด Lite | 
| การวางซ้อนพื้น | รองรับไหม ไม่ GoogleMap.addGroundOverlay()ไม่รองรับในโหมด Lite | 
| การวางซ้อนของชิ้นส่วนแผนที่ | รองรับไหม ไม่ GoogleMap.addTileOverlay()ไม่รองรับในโหมด Lite | 
| ท่าทางสัมผัส | รองรับไหม ไม่ โหมด Lite ไม่รองรับท่าทางสัมผัส การเปิดและปิดใช้ท่าทางสัมผัส
      จะไม่มีผล | 
| Street View | รองรับไหม ไม่ Street View ไม่รองรับในโหมด Lite |