โปรแกรมแสดงผลแผนที่ที่อัปเกรดแล้วพร้อมใช้งานใน 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 เวอร์ชัน 21.39.13 หรือเวอร์ชันก่อนหน้าจะใช้โปรแกรมแสดงผลเดิมต่อไป
เลือกไม่ใช้โปรแกรมแสดงผลที่อัปเกรดแล้ว
หากจําเป็น คุณสามารถเลือกไม่ใช้โปรแกรมแสดงผลที่อัปเกรดแล้วเพื่อใช้โปรแกรมแสดงผลเดิมในแอปได้อย่างชัดเจน
โดยวิธีเลือกไม่ใช้มีดังนี้
อัปเกรด Maps SDK สำหรับ Android เป็น v18.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; } } }