Trình kết xuất bản đồ mới

Trình kết xuất bản đồ đã nâng cấp có sẵn kể từ phiên bản 18.0.0 của SDK Maps dành cho Android. Trình kết xuất này mang đến nhiều điểm cải tiến, trong đó có tính năng hỗ trợ định kiểu cho bản đồ dựa trên đám mây. Bạn có thể chọn tham gia dùng thử trình kết xuất mới trước khi trở thành trình kết xuất mặc định cho các thiết bị Android, thông qua việc triển khai dần dần từ tháng 6 năm 2022.

Trình kết xuất mới mang lại các lợi ích sau:

  • Các tính năng tạo kiểu bản đồ trên đám mây có sẵn cho trình kết xuất mới.
  • Bạn có thể sử dụng Tuỳ chỉnh Polyline nâng cao với trình kết xuất mới.
  • Giảm tải mạng, nhu cầu xử lý và tiêu thụ bộ nhớ.
  • Cải thiện khả năng xử lý cử chỉ để tạo ảnh động tốt hơn, đồng thời kéo và thu phóng mượt mà hơn.
  • Các chuyển đổi linh hoạt hơn và các nhãn bản đồ được định vị rõ ràng.
  • Trải nghiệm người dùng ổn định và cải thiện hơn.

Thiết bị được hỗ trợ

Để sử dụng trình kết xuất mới, các thiết bị phải đáp ứng những tiêu chí sau:

  • Android 5.0 (API cấp 21) trở lên
  • Bộ nhớ dữ liệu từ 2 GB 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 có dưới 2 GB bộ nhớ dữ liệu hoặc đang 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ũ.

Cách dùng thử trình kết xuất mới

Để chọn sử dụng trình kết xuất mới, hãy thực hiện các bước sau:

Mã của bạn phải gọi MapsInitializer.initialize() trước khi tạo MapView, MapFragment hoặc SupportMapFragment. Bạn nên gọi hàm này trong onCreate cho Application của ứng dụng hoặc Activity trước khi đặt chế độ xem nội dung.

Ví dụ sau cho thấy cách gọi MapsInitializer.initialize() để yêu cầu phiên bản trình kết xuất.

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.")
    }
  }
}