본문으로 건너뛰기

통합하기

매체는 NAM의 광고유닛을 호출하여 NAM과 연동된 다양한 광고공급자로부터 광고를 공급받을 수 있습니다.

광고를 게재하고 수익을 올리려면 먼저 NAM SDK 를 앱에 통합해야 합니다.


시작하기 앞서

최신 버전의 Android Studio 사용을 권장 합니다.

Prerequisites


NAM SDK 적용하기

  1. 앱 수준의 build.gradle 에 core 모듈 및 사용할 DSP 별 extension 모듈을 추가합니다. (필요 모듈만 추가)
dependencies {
implementation(platform("com.naver.gfpsdk:nam-bom:8.1.0"))
implementation("com.naver.gfpsdk:nam-core") // NAM SDK core (mandatory)
implementation("com.naver.gfpsdk.mediation:nam-nda") // Naver S2S extension
implementation("com.naver.gfpsdk.mediation:nam-dfp") // DFP extension
implementation("com.naver.gfpsdk.mediation:nam-fan") // FAN extension
implementation("com.naver.gfpsdk.mediation:nam-inmobi") // InMobi extension
implementation("com.naver.gfpsdk.mediation:nam-unity") // Unity extension
implementation("com.naver.gfpsdk.mediation:nam-applovin") // AppLovin(MAX) extension
implementation("com.naver.gfpsdk.mediation:nam-vungle") // Vungle extension
implementation("com.naver.gfpsdk.mediation:nam-dt") // DigitalTurbine(Fyber) extension
implementation("com.naver.gfpsdk.mediation:nam-aps") // AmazonPublisherServices(APS) extension
implementation("com.naver.gfpsdk.mediation:nam-ironsource") // IronSource extension
}
  1. NAM 플랫폼(혹은 NAM 담당자)를 통해 발급 받은 NAM Publisher CodeAndroidManifest.xml 파일에 설정합니다.
  • 먼저 Publisher Code 의 문자열 처리를 위해 string.xml 파일에 발급 받은 Publisher Code 를 추가합니다.
<string name="nam_publisher_cd">YOUR_PUBLISHER_CODE</string>
위험

Publisher Code 는 필수 값으로서 해당 값을 추가하지 않을 경우, 앱이 시작되는 시점에 크래시가 발생하게 됩니다.

  • AndroidManifest.xml 파일 application 태그 하위에 meta-data 태그를 추가합니다.

이때 namecom.naver.gfpsdk.PUBLISHER_CD 를 사용하고, value는 위에 추가한 문자열 리소스 정보를 사용합니다.

<manifest>
<application>
<!-- Publisher Code 추가 (Required) -->
<meta-data
android:name="com.naver.gfpsdk.PUBLISHER_CD"
android:value="@string/nam_publisher_cd"/>
</application>
</manifest>

몇가지 확인 사항

IronSource 모듈 사용시

IronSource SDK 는 mavenCentral 이 아닌 아래의 repository를 추가해 주셔야 합니다.

repositories {
maven {
url = uri("https://android-sdk.is.com/")
}
}

AppSetID

AppSetID는 동일한 기기내에서 Publisher 마다의 사용자 추적을 도와줍니다.

NAM SDK 4.4.0 이상 부터는 기본 적용되어 있으니 DFP 모듈을 사용하시거나 play-services / play-services-appset 라이브러리를 사용하고 계신다면 app-set-id 가 광고 요청 파라미터에 포함 됩니다.

참고로 NAM SDK 는 com.google.android.gms:play-services-appset:16.0.2 로 테스트 되었습니다.

InMobi 모듈 사용시

InMobi 라이브러리에서는 내부적으로 Picasso 라이브러리를 사용하고 있습니다.

관련해서 빌드시 com.android.support 라이브러리를 사용하고 있어 AndroidX 관련 문제가 발생할 수 있습니다.

InMobi 모듈을 사용하시는 경우 gradle.properties 파일에 android.enableJetifier=true를 설정하여 사용해 주시기 바랍니다.

Google (DFP) 모듈 사용시

구글 Ad Manager를 초기화 하기 위해 App ID가 AndroidManifest.xml 파일에 설정되어 있어야 합니다.

설정 없이 DFP 모듈을 추가하게 되면 앱 실행시 비 정상적으로 종료 됩니다.

<manifest>
<application>
<!-- Sample Ad Manager app ID: ca-app-pub-3940256099942544~3347511713 -->
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/>
</application>
</manifest>

네이티브 광고의 동영상 유형을 위한 하드웨어 가속화 설정 확인

FAN 모듈 등, 동영상 소재가 포함된 네이티브 광고가 보여질 때 검은 화면이 나타날 수 있습니다.

타겟 API 수준이 14(Ice Cream Sandwich, Android 4.0.1) 이상이면 하드웨어 가속화가 기본적으로 활성화되지만

앱 수준이나 활동 수준에서 명시적으로 이 기능을 활성화할 수도 있습니다.

네트워크 보안 구성 확인

(FAN 모듈을 사용하는 경우) Meta Audience Network SDK에서는 SDK 에서 미디어 파일을 캐싱하는 캐싱 프록시로 127.0.0.1 (localhost)을 사용합니다.

Android P부터 일반 텍스트 트래픽(암호화되지 않은 HTTP)은 기본적으로 차단 되는데, 이로 인해 SDK의 미디어 캐싱 기능이 영향을 받게 되며 사용자 경험과 광고 매출도 영향을 받을 수 있습니다.


지원하는 Mediation DSP 별 광고 종류

C2S

  • DFP: Doubleclick for Publishers (구글 광고)
  • FAN: META(Facebook) Audience Network
  • InMobi
  • Unity
  • AppLovin
  • Vungle
  • DigitalTurbine
  • APS: Amazon Publisher Services
  • IronSource

S2S

  • NDA: Naver Display Ads 의 약자로써 NAVER 가 제공하는 광고 및 Pubmatic, AppNexus, Rubicon 등의 외부 광고 제공자의 광고도 NDA 모듈(s2s)을 통해 제공 됩니다.
정보

아래 지원되는 광고를 참고하시고, NAM 관리자와 협의하여 연결하고자 하는 DSP를 확인하시고 각 모듈을 추가 하여야 합니다.

Ad ProviderBannerNativeNative (without media view)RewardInterstitial
NDAOOOXX
DFPOOOOO
FANOOOOO
InMobiOOXXX
UnityO(only 320*50)XXOO
AppLovinOOOOO
VungleXXXOO
DigitalTurbineOXXOO
APSOXXXX
IronSourceXXXOO
정보

FAN 등 기타 C2S의 경우 테스트 광고를 받기 위해서는 ad id (광고 추적 ID) 의 등록이 필요할 수 있습니다.


광고 적용하기