Class NaverMapSdk

java.lang.Object
com.naver.maps.map.NaverMapSdk

public final class NaverMapSdk extends Object
인증, 캐시 관리 등 SDK의 전역적인 기능을 담당하는 클래스. 이 클래스는 싱글톤으로, getInstance(Context)를 이용해 인스턴스를 가져올 수 있습니다.

네이버 지도 SDK를 사용하려면 반드시 클라이언트를 지정하고 인증 및 초기화를 수행해야 합니다. 클라이언트를 지정하는 방법은 두 가지입니다.
  • 앱의 AndroidManifest.xml에 com.naver.maps.map.CLIENT_ID를 meta-data로 지정합니다.
     <manifest xmlns:android="http://schemas.android.com/apk/res/android">
         <application>
             <meta-data android:name="com.naver.maps.map.CLIENT_ID" android:value="YOUR_CLIENT_ID_HERE"/>
         </application>
     </manifest>
  • Application.onCreate()에서 setClient(Client)를 명시적으로 호출합니다.
    NaverMapSdk.getInstance(this).setClient(new NaverMapSdk.NaverCloudPlatformClient("YOUR_CLIENT_ID_HERE"));
  • Field Details

    • METADATA_NAME_CLIENT_ID

      @NonNull public static final String METADATA_NAME_CLIENT_ID
      클라이언트 ID에 대한 메타데이터 이름.
      See Also:
    • METADATA_NAME_CLIENT_TYPE

      @NonNull public static final String METADATA_NAME_CLIENT_TYPE
      클라이언트 유형에 대한 메타데이터 이름.
      See Also:
    • METADATA_VALUE_CLIENT_TYPE_DEFAULT

      @NonNull public static final String METADATA_VALUE_CLIENT_TYPE_DEFAULT
      일반 네이버 클라우드 플랫폼 클라이언트을 의미하는 유형 값.
      See Also:
    • METADATA_VALUE_CLIENT_TYPE_GOV

      @NonNull public static final String METADATA_VALUE_CLIENT_TYPE_GOV
      공공용 네이버 클라우드 플랫폼 클라이언트을 의미하는 유형 값.
      See Also:
    • METADATA_NAME_CACHE_LOCATION

      @NonNull public static final String METADATA_NAME_CACHE_LOCATION
      지도 캐시 저장소의 위치에 대한 메타데이터 이름.
      See Also:
    • METADATA_VALUE_CACHE_LOCATION_CACHE

      @NonNull public static final String METADATA_VALUE_CACHE_LOCATION_CACHE
      앱의 캐시 영역을 지도 캐시 저장소로 사용할 것임을 의미하는 값.
      See Also:
    • METADATA_VALUE_CACHE_LOCATION_DATA

      @NonNull public static final String METADATA_VALUE_CACHE_LOCATION_DATA
      앱의 데이터 영역을 지도 캐시 저장소로 사용할 것임을 의미하는 값.
      See Also:
    • METADATA_VALUE_CACHE_LOCATION_EXTERNAL

      @NonNull public static final String METADATA_VALUE_CACHE_LOCATION_EXTERNAL
      외부 저장 공간을 지도 캐시 저장소로 사용할 것임을 의미하는 값.
      See Also:
    • METADATA_NAME

      @Deprecated @NonNull public static final String METADATA_NAME
      Deprecated.
      METADATA_NAME_CLIENT_ID를 사용하세요.
      클라이언트 ID에 대한 메타데이터 이름.
      See Also:
  • Method Details

    • getInstance

      @NonNull @UiThread public static NaverMapSdk getInstance(@NonNull Context context)
      유일한 인스턴스를 반환합니다.
      Parameters:
      context - 컨텍스트 객체.
      Returns:
      NaverMapSdk 인스턴스.
    • flushCache

      @UiThread public void flushCache(@Nullable NaverMapSdk.CacheFlushCallback callback)
      지도 데이터 캐시를 초기화합니다. 초기화는 비동기로 처리되며, 완료되면 callbackNaverMapSdk.CacheFlushCallback.onCacheFlushed() 메서드가 호출됩니다.
      Parameters:
      callback - 콜백 객체. null일 경우 콜백이 생략됩니다.
    • getClient

      지정된 클라이언트를 반환합니다. setClient(Client)를 호출해 명시적으로 지정하지 않았다면 앱의 메타데이터에 지정된 클라이언트가 반환됩니다. setClient(Client)도 호출되지 않았고 앱의 메타데이터에도 클라이언트가 지정되어 있지 않다면 예외가 발생합니다.
      Returns:
      클라이언트 객체.
      Throws:
      IllegalStateException - 클라이언트가 지정되지 않았을 경우 발생.
    • setClient

      @UiThread public void setClient(@NonNull NaverMapSdk.Client client)
      클라이언트를 명시적으로 지정합니다. 명시적으로 지정할 경우 앱의 메타데이터에 지정된 클라이언트 정보는 무시됩니다.
      Parameters:
      client - 클라이언트 객체.
    • getOnAuthFailedListener

      @Nullable public NaverMapSdk.OnAuthFailedListener getOnAuthFailedListener()
      인증 실패 이벤트 리스너를 반환합니다.
      Returns:
      이벤트 리스너 객체. 지정된 이벤트 리스너가 없을 경우 null.
    • setOnAuthFailedListener

      public void setOnAuthFailedListener(@Nullable NaverMapSdk.OnAuthFailedListener listener)
      인증 실패 이벤트 리스너를 지정합니다.
      Parameters:
      listener - 이벤트 리스너 객체. null일 경우 이벤트 리스너가 해제됩니다.