ตัวแสดงผลแผนที่ที่อัปเกรดพร้อมใช้งาน Maps SDK สำหรับ Android เวอร์ชัน 18.0.0 โหมดแสดงภาพนี้มีการปรับปรุงมากมาย รวมถึงการรองรับการจัดรูปแบบแผนที่ในระบบคลาวด์ คุณสามารถเลือกลองใช้โหมดแสดงภาพใหม่ก่อนที่จะกลายเป็นโหมดแสดงภาพเริ่มต้นสำหรับอุปกรณ์ Android ได้ตั้งแต่เดือนมิถุนายน 2022 เป็นอย่างเร็วที่สุด
โหมดแสดงภาพใหม่มีประโยชน์ดังต่อไปนี้
- ฟีเจอร์การจัดรูปแบบแผนที่ในระบบคลาวด์ พร้อมใช้งานกับโหมดแสดงภาพใหม่
- การปรับแต่งโพลีไลน์ขั้นสูงพร้อมใช้งานในโหมดแสดงภาพใหม่
- ลดภาระงานของเครือข่าย ความต้องการในการประมวลผล และการใช้หน่วยความจำ
- การจัดการท่าทางสัมผัสที่ดีขึ้นเพื่อให้ภาพเคลื่อนไหวมีคุณภาพดีขึ้น รวมถึงการเลื่อนและซูมที่ไหลลื่นขึ้น
- การเปลี่ยนได้ไหลลื่นมากขึ้น และป้ายกำกับแผนที่ที่กำหนดตำแหน่งอย่างชัดเจน
- ประสบการณ์ของผู้ใช้ที่เสถียรและปรับปรุงขึ้น
อุปกรณ์ที่รองรับ
หากต้องการใช้ตัวแสดงผลใหม่ อุปกรณ์ต้องมีคุณสมบัติตามเกณฑ์ต่อไปนี้
- Android 5.0 (API ระดับ 21) ขึ้นไป
- พื้นที่เก็บข้อมูล 2 GB ขึ้นไป
- ใช้บริการ Google Play เวอร์ชัน 21.39.14 ขึ้นไป
อุปกรณ์ที่ใช้ Android 4.4W (API ระดับ 20) และเก่ากว่า หรือมีพื้นที่เก็บข้อมูลน้อยกว่า 2 GB หรือใช้บริการ Google Play เวอร์ชัน 21.39.13 ขึ้นไป จะยังใช้ตัวแสดงผลเดิมต่อไป
วิธีลองใช้โหมดแสดงภาพใหม่
หากต้องการเลือกใช้ตัวแสดงผลใหม่ ให้ทำตามขั้นตอนต่อไปนี้
- อัปเดตทรัพยากร Dependency ของแอปให้ใช้
com.google.android.gms:play-services-maps:18.0.0
ขึ้นไป - อัปเดตโค้ดเพื่อนำเข้า
MapsInitializer
และMapsInitializer.Renderer
อย่างชัดแจ้ง - โปรดอัปเดตรหัสสำหรับโทรไปที่
MapsInitializer.initialize()
เพื่อขอRenderer.LATEST
- ใช้
OnMapsSdkInitializedCallback
เพื่อดูว่าระบบแสดงผลเวอร์ชันใด
รหัสของคุณต้องเรียกใช้ MapsInitializer.initialize()
ก่อนที่จะสร้าง MapView
,
MapFragment
หรือ
SupportMapFragment
ขึ้น เราขอแนะนำให้เรียกใช้โค้ดนี้ใน onCreate
สำหรับ Application
หรือ Activity
ของแอปก่อนที่จะมีการตั้งค่ามุมมองเนื้อหา
ตัวอย่างต่อไปนี้แสดงวิธีเรียกใช้ MapsInitializer.initialize()
เพื่อขอเวอร์ชันโหมดแสดงภาพ
Java
import com.google.android.gms.maps.MapsInitializer; import com.google.android.gms.maps.MapsInitializer.Renderer; import com.google.android.gms.maps.OnMapsSdkInitializedCallback; class MapRendererOptInApplication extends Application implements OnMapsSdkInitializedCallback { @Override public void onCreate() { super.onCreate(); MapsInitializer.initialize(getApplicationContext(), Renderer.LATEST, this); } @Override public void onMapsSdkInitialized(MapsInitializer.Renderer renderer) { switch (renderer) { case LATEST: Log.d("MapsDemo", "The latest version of the renderer is used."); break; case LEGACY: Log.d("MapsDemo", "The legacy version of the renderer is used."); break; } } }
Kotlin
import com.google.android.gms.maps.MapsInitializer import com.google.android.gms.maps.MapsInitializer.Renderer import com.google.android.gms.maps.OnMapsSdkInitializedCallback internal class MapRendererOptInApplication : Application(), OnMapsSdkInitializedCallback { override fun onCreate() { super.onCreate() MapsInitializer.initialize(applicationContext, Renderer.LATEST, this) } override fun onMapsSdkInitialized(renderer: MapsInitializer.Renderer) { when (renderer) { Renderer.LATEST -> Log.d("MapsDemo", "The latest version of the renderer is used.") Renderer.LEGACY -> Log.d("MapsDemo", "The legacy version of the renderer is used.") } } }