새 지도 렌더기

업그레이드된 지도 렌더기는 Android용 Maps SDK 18.0.0 버전부터 사용할 수 있습니다. 이 렌더기를 통해 클라우드 기반 지도 스타일 지정 등의 여러 가지 개선된 기능을 이용할 수 있습니다. 점진적 출시는 일러도 2022년 6월부터 시작되지만, 원한다면 새 렌더기가 Android 기기용 기본 렌더기로 제공되기 전에 미리 사용해 볼 수 있습니다.

새 렌더기에는 다음과 같은 이점이 있습니다.

  • 새 렌더기에서는 클라우드 기반 지도 스타일 지정 기능을 사용할 수 있습니다.
  • 네트워크 로드, 처리 수요, 메모리 소모가 감소했습니다.
  • 동작 처리 시 애니메이션이 개선되었으며, 화면 이동과 확대/축소도 더욱 부드러워졌습니다.
  • 전환이 더욱 매끄러워지고 지도 라벨의 배치가 명확해졌습니다.
  • 사용자 환경이 더욱 안정적으로 개선되었습니다.

지원되는 기기

새 렌더기를 사용하려면 기기가 다음 기준을 충족해야 합니다.

  • Android 5.0(API 수준 22) 이상
  • 데이터 저장용량 2GB 이상
  • Google Play 서비스 21.39.14 이상 버전 사용

Android 21 버전 이하를 사용하거나 데이터 저장용량이 2GB 미만이거나 Google Play 서비스 21.39.13 이하 버전을 사용하는 기기에서는 기존 렌더기가 계속 사용됩니다.

새 렌더기를 사용해 보는 방법

새 렌더기를 선택하려면 다음 단계를 따르세요.

MapView, MapFragment 또는 SupportMapFragment가 만들어지기 전에 코드에서 MapsInitializer.initialize()를 호출해야 합니다. 콘텐츠 뷰를 설정하기 전에 onCreate에서 앱의 Application 또는 Activity에 대해 호출하는 것이 좋습니다.

다음 예에서는 MapsInitializer.initialize()를 호출하여 렌더기 버전을 요청하는 방법을 보여줍니다.

자바


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