โปรแกรมแสดงผลแผนที่ที่อัปเกรดแล้วพร้อมใช้งานใน Maps SDK สำหรับ Android เวอร์ชัน 18.2.0 โปรแกรมแสดงผลนี้มีการปรับปรุงหลายอย่าง รวมถึงการรองรับการจัดสไตล์แผนที่แบบระบบคลาวด์
โปรแกรมแสดงผลใหม่มีข้อดีดังนี้
- ฟีเจอร์การจัดสไตล์แผนที่แบบระบบคลาวด์จะพร้อมใช้งานเมื่อใช้โปรแกรมแสดงผลแบบใหม่
- การปรับแต่งรูปหลายเหลี่ยมขั้นสูงจะใช้ได้กับโปรแกรมแสดงผลแบบใหม่
- ลดภาระเครือข่าย ความต้องการการประมวลผล และการใช้หน่วยความจํา
- ปรับปรุงการจัดการท่าทางสัมผัสเพื่อให้ภาพเคลื่อนไหวดีขึ้น รวมถึงการเลื่อนและซูมที่ราบรื่นขึ้น
- การเปลี่ยนภาพที่ราบรื่นยิ่งขึ้นและป้ายกำกับแผนที่ที่วางตำแหน่งอย่างชัดเจน
- ประสบการณ์ของผู้ใช้ที่เสถียรและดีขึ้น
สถานะการอัปเดตอัตโนมัติ
ในเดือนมีนาคม 2024 Google เริ่มอัปเดตแอปที่ติดตั้งใช้งานทั้งหมดโดยอัตโนมัติให้ใช้โปรแกรมแสดงผลที่อัปเกรดแล้ว การอัปเดตอัตโนมัติมีผลกับแอปทั้งหมดที่ทำงานในอุปกรณ์ที่เป็นไปตามข้อกำหนดขั้นต่ำของอุปกรณ์ ไม่ว่าจะใช้ Maps SDK สำหรับ Android เวอร์ชันใดก็ตาม การเปิดตัวนี้เสร็จสมบูรณ์แล้ว
การอัปเดตอัตโนมัติจะไม่มีผลกับรายการต่อไปนี้
แอปที่อัปเดตแล้วเพื่อใช้โปรแกรมแสดงผลที่อัปเกรด
แอปที่เลือกไม่ใช้การอัปเกรดอย่างชัดเจน
แอปที่ทำงานในอุปกรณ์ที่ไม่เป็นไปตามข้อกำหนดขั้นต่ำของอุปกรณ์
อุปกรณ์ที่รองรับ
หากต้องการใช้โปรแกรมแสดงผลแผนที่ที่อัปเกรด อุปกรณ์ต้องมีคุณสมบัติตรงตามเกณฑ์ต่อไปนี้
- Android 5.0 (API ระดับ 21) ขึ้นไป
- ใช้บริการ Google Play เวอร์ชัน 21.39.14 ขึ้นไป
อุปกรณ์ที่ใช้ Android 4.4W (API ระดับ 20) หรือเก่ากว่า หรือใช้ Google Play Services เวอร์ชัน 21.39.13 หรือเก่ากว่าจะยังคงใช้โปรแกรมแสดงผลเดิมต่อไป
เลือกไม่ใช้โปรแกรมแสดงผลที่อัปเกรดแล้ว
หากจำเป็น คุณสามารถเลือกไม่ใช้โปรแกรมแสดงผลที่อัปเกรดแล้วเพื่อใช้โปรแกรมแสดงผลเดิมในแอปได้อย่างชัดเจน
โดยวิธีเลือกไม่ใช้มีดังนี้
อัปเกรด Maps SDK สำหรับ Android เป็นเวอร์ชัน 18.0 ขึ้นไป
อัปเดตโค้ดให้นำเข้า MapsInitializer และ MapsInitializer.Renderer อย่างชัดแจ้ง
อัปเดตโค้ดให้เรียกใช้
MapsInitializer.initialize()
โดยส่งRenderer.LEGACY
เพื่อเลือกไม่ใช้และใช้โปรแกรมแสดงผลเดิมใช้ OnMapsSdkInitializedCallback เพื่อระบุว่าระบบแสดงผลเวอร์ชันใดที่แสดงผล
โค้ดของคุณต้องเรียกใช้ MapsInitializer.initialize()
ก่อนสร้าง MapView, MapFragment หรือ SupportMapFragment เราขอแนะนำให้เรียกใช้สิ่งนี้ใน onCreate
สำหรับแอปพลิเคชันหรือกิจกรรมของแอปก่อนตั้งค่ามุมมองเนื้อหา
ตัวอย่างต่อไปนี้แสดงวิธีเรียกใช้ MapsInitializer.initialize()
เพื่อเลือกไม่ใช้โปรแกรมแสดงผลแผนที่เดิม
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.LEGACY, 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.") } } }
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.LEGACY, 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; } } }