본문으로 건너뛰기

시작하기

NAM SDK 를 사용하면 다양한 광고 공급자로부터의 광고를 통해 Android 앱에서 수익을 창출할 수 있습니다. 이 가이드에서는 NAM SDK 를 사용하여 Android 앱에서 광고를 통합하는 방법을 설명합니다.


기본 요건​

  • Android Studio 를 설치하거나 최신 버전으로 업데이트 합니다.
  • minSdkVersion 23 이상

앱에 NAM SDK 추가​

1. Gradle 설정 파일에 MavenCentral 저장소를 포함합니다.​

settings.gradle.kts
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
mavenCentral()
// . . .
}
}

2. 앱 레벨의 build.gradle 파일에 다음 종속성을 추가합니다.​

정보

NAM SDK 가 제공하는 라이브러리 버전 관리 제어에는 NAM Android BoM 을 사용하는 것이 좋습니다.

build.gradle.kts
dependencies {
// Import the BoM for the NAM platform
implementation(platform("com.naver.gfpsdk:nam-bom:8.19.0"))

// When using the BoM, you don't specify versions in NAM library dependencies

// Add the NAM Core dependency (required)
implementation("com.naver.gfpsdk:nam-core")

// Add the S2S mediation library dependency (required)
implementation("com.naver.gfpsdk.mediation:nam-nda")

// TODO: Add the dependencies for any other mediation libraries you want to use
// For example, add the mediation library dependencies for Google Ad Manager, Meta Audience Network
implementation("com.naver.gfpsdk.mediation:nam-dfp")
implementation("com.naver.gfpsdk.mediation:nam-fan")
...
}

3. Naver Ad Manager 플랫폼 혹은 담당자를 통해 발급 받은 Publisher Code 를 아래와 같이 AndroidManifest.xml 에 추가합니다.​

AndroidManifest.xml
<manifest>
<application>
<meta-data
android:name="com.naver.gfpsdk.PUBLISHER_CD"
android:value="YOUR_PUBLISHER_CODE" />
</application>
</manifest>
위험

Publisher Code 값은 필수 항목이며, 누락 시 앱 시작 과정에서 오류가 발생하여 앱이 종료될 수 있습니다. 따라서 이 값을 반드시 포함해야 합니다.

4. AD ID 를 수집할 수 있도록 Google Play Services SDK 를 추가합니다.​

NAM SDK 는 정교한 광고 타겟팅을 지원하기 위한 목적으로 Google Advertising ID(이하 AD ID) 를 수집합니다. 애플리케이션에서 AD ID 를 가져오도록 지원하려면 다음을 참고하세요.

build.gradle.kts
dependencies {
implementation("com.google.android.gms:play-services-ads-identifier:17.0.1")
...
}

추가 확인 사항​

다음은 NAM SDK 연동 시 추가로 확인해야 할 사항에 대한 가이드입니다.

SDK 초기화​

NAM SDK 는 광고 요청 및 수익화를 위해 초기화가 필요하지만, SDK 내부적으로 애플리케이션이 구동되는 시점에 맞춰 초기화가 자동으로 처리되므로 별도의 초기화 코드를 작성할 필요가 없습니다.

다만, 앱의 특정 상황에 따라 초기화 시점을 제어해야 하는 경우가 있을 수 있기에 별도의 수동 초기화 기능도 제공합니다. 자세한 내용은 수동 초기화 가이드를 참고하세요.

App Set ID​

App Set ID 는 기기별 및 앱 스토어의 개발자 계정별로 사용자를 고유하게 추적하는 데 도움을 줍니다. 애플리케이션에서 App Set ID 를 가져오도록 지원하려면 다음을 참고하세요.

build.gradle.kts
dependencies {
implementation("com.google.android.gms:play-services-appset:16.0.2")
...
}

Chrome Custom Tabs​

광고 클릭 시 앱 외부에서 열리는 외부 브라우저 대신 Chrome Custom Tabs 를 사용하려면, 애플리케이션에 Chrome Custom Tabs 라이브러리를 추가해야 합니다.

build.gradle.kts
dependencies {
implementation("androidx.browser:browser:1.4.0")
...
}

WebView 사용 시​

NAM SDK 를 연동한 앱에서 NAM Web SDK 를 통해 광고를 표시하는 WebView 를 사용하는 경우, 각 WebView 객체를 SDK 에 등록해야 합니다. 이는 WebView 에 로드된 NAM Web SDK 가 적용된 웹사이트와의 통신을 통해 광고 타겟팅의 정확도를 높이고, 앱의 광고 수익성을 개선하기 위한 핵심 기능입니다. 따라서 반드시 8.2.4 이상 버전을 사용하여 WebView 등록 가이드를 적용해주시기 바랍니다.

네트워크 보안 구성 확인​

일부 미디에이션 네트워크는 HTTPS가 아닌 cleartext(암호화되지 않은) 트래픽을 통해 광고 소재를 제공합니다. Android 9.0(API 28) 이상에서는 기본적으로 HTTP 트래픽을 차단하므로, 이로 인해 사용자 경험과 광고 매출도 영향을 받을 수 있습니다. 매출을 최대화하기 위해서는 HTTP 트래픽을 허용할 것을 권장합니다. 영향을 받는 미디에이션 네트워크는 다음과 같습니다.


광고 형식 선택​

위 단계까지 모두 완료하면 NAM SDK 를 사용하여 광고를 통합할 준비가 완료되었습니다. 이제 앱에서 사용할 광고 형식을 선택하고 해당 형식에 맞는 광고를 추가할 수 있습니다.

NAM SDK 는 다양한 광고 형식을 지원합니다. 아래는 주요 광고 형식입니다.

정보

NAM SDK 의 샘플 코드는 GitHub NAM Android SDK 저장소에서 확인하실 수 있습니다.