ตัวแสดงผลแผนที่ที่อัปเกรดพร้อมใช้งานใน 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.") } } }