Trình kết xuất bản đồ nâng cấp có sẵn từ phiên bản 18.2.0 của SDK Bản đồ dành cho Android. Trình kết xuất đồ hoạ này mang đến nhiều cải tiến, bao gồm cả tính năng hỗ trợ Định kiểu bản đồ dựa trên đám mây.
Trình kết xuất mới mang lại các lợi ích sau:
- Các tính năng Định kiểu bản đồ dựa trên đám mây có sẵn với trình kết xuất mới.
- Tuỳ chỉnh đường đa tuyến nâng cao có sẵn với trình kết xuất mới.
- Giảm tải mạng, nhu cầu xử lý và mức sử dụng bộ nhớ.
- Cải thiện khả năng xử lý cử chỉ để tạo ảnh động đẹp hơn, đồng thời thao tác kéo và thu phóng mượt mà hơn.
- Chuyển đổi linh hoạt hơn và nhãn bản đồ được định vị rõ ràng.
- Mang đến trải nghiệm người dùng ổn định và tốt hơn.
Trạng thái cập nhật tự động
Tháng 3 năm 2024, Google bắt đầu tự động cập nhật tất cả ứng dụng đã triển khai để sử dụng trình kết xuất đồ hoạ được nâng cấp. Các bản cập nhật tự động đã được áp dụng cho tất cả ứng dụng đang chạy trên các thiết bị đáp ứng các yêu cầu tối thiểu về thiết bị, bất kể phiên bản SDK bản đồ dành cho Android mà ứng dụng sử dụng. Bản phát hành này hiện đã hoàn tất.
Các bản cập nhật tự động không áp dụng cho:
Các ứng dụng đã cập nhật để sử dụng trình kết xuất được nâng cấp.
Những ứng dụng đã chọn không nâng cấp một cách rõ ràng.
Ứng dụng chạy trên thiết bị không đáp ứng thiết bị tối thiểu .
Thiết bị được hỗ trợ
Để sử dụng trình kết xuất bản đồ được nâng cấp, thiết bị phải đáp ứng các tiêu chí sau:
- Android 5.0 (API cấp 21) trở lên
- Sử dụng Dịch vụ Google Play phiên bản 21.39.14 trở lên
Các thiết bị sử dụng Android 4.4W (API cấp 20) trở xuống hoặc sử dụng Dịch vụ Google Play phiên bản 21.39.13 trở xuống sẽ tiếp tục sử dụng trình kết xuất cũ.
Chọn không sử dụng trình kết xuất đã nâng cấp
Nếu cần, bạn có thể chọn không sử dụng trình kết xuất đã nâng cấp để sử dụng trình kết xuất cũ trong ứng dụng.
Cách làm như sau:
Nâng cấp SDK Bản đồ dành cho Android lên phiên bản 18.0 trở lên.
Cập nhật mã của bạn để nhập MapsInitializer một cách rõ ràng và MapsInitializer.Renderer.
Hãy cập nhật mã để gọi
MapsInitializer.initialize()
, truyềnRenderer.LEGACY
để chọn không tham gia và sử dụng trình kết xuất cũ.Sử dụng OnMapsSdkInitializedCallback để xác định phiên bản trình kết xuất nào được trả về.
Mã của bạn phải gọi
MapsInitializer.initialize()
trước bất kỳ
MapView,
MapFragment,
hoặc
SupportMapFragment
đã được tạo. Bạn nên gọi hàm này trong onCreate
cho
Ứng dụng,
hoặc
Hoạt động,
trước khi đặt khung hiển thị nội dung.
Ví dụ sau đây trình bày cách gọi MapsInitializer.initialize()
đến
chọn không sử dụng trình kết xuất bản đồ cũ.
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; } } }