시작하기

컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.

광고를 게재하고 수익을 창출하려면 먼저 Google 모바일 광고 SDK를 앱에 통합해야 합니다. SDK를 통합하면 광고 형식 (예: 네이티브 또는 보상형 동영상 광고)을 선택하고 구현 단계를 진행할 수 있습니다.

시작하기 전에

앱을 준비하려면 다음 섹션의 단계를 완료합니다.

앱 기본 요건

  • Android 스튜디오 3.2 이상 사용
  • 앱의 빌드 파일이 다음 값을 사용하는지 확인합니다.

    • minSdkVersion 19 이상
    • compileSdkVersion 28 이상

AdMob 계정에서 앱 설정

다음 단계에 따라 앱을 AdMob 앱으로 등록하세요.

  1. AdMob 계정에 로그인하거나 가입합니다.

  2. AdMob에 앱을 등록합니다. 이 단계에서는 고유한 AdMob 앱 ID로 AdMob 앱을 만들며 이 ID는 이 가이드의 뒷부분에서 필요합니다.

앱 구성

  1. 프로젝트 수준 build.gradle 파일의 buildscriptallprojects 섹션에 Google Maven 저장소Maven 중앙 저장소를 포함합니다.

    buildscript {
        repositories {
            google()
            mavenCentral()
        }
    }
    
    allprojects {
        repositories {
            google()
            mavenCentral()
        }
    }
    
  2. 모듈의 앱 수준 Gradle 파일(일반적으로 app/build.gradle)에 Google 모바일 광고 SDK의 종속 항목을 추가하세요.

    dependencies {
      implementation 'com.google.android.gms:play-services-ads:21.4.0'
    }
    
  3. AdMob 앱 ID (AdMobUI에서 식별됨)를 앱의 AndroidManifest.xml 파일에 추가합니다. 이렇게 하려면 android:name="com.google.android.gms.ads.APPLICATION_ID"가 있는 <meta-data> 태그를 추가합니다. AdMob UI에서 앱 ID를 찾을 수 있습니다. android:value에는 따옴표로 묶인 AdMob 앱 ID를 삽입합니다.

    <manifest>
        <application>
            <!-- Sample AdMob 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>
    

    실제 앱에서는 위에 표시된 앱 ID가 아닌 실제 AdMob 앱 ID를 사용하세요. Hello World 앱에서 SDK를 간단히 실험해 보려는 경우라면 위에 표시된 샘플 앱 ID를 사용할 수 있습니다.

    또한 위와 같이 <meta-data> 태그를 추가하지 않으면 다음 메시지가 표시되며 앱이 다운됩니다.

    The Google Mobile Ads SDK was initialized incorrectly.
    

    (선택사항) 이전 버전이 Android 13에서 작동하도록 AD_ID 권한을 선언합니다.

    앱에서 Google 모바일 광고 SDK 버전 20.4.0 이상을 사용하는 경우 SDK가 com.google.android.gms.permission.AD_ID 권한을 자동으로 선언하고 사용 가능한 경우 언제든지 광고 ID에 액세스할 수 있으므로 이 단계를 건너뛸 수 있습니다.

    Google 모바일 광고 SDK 버전 20.3.0 이하를 사용하고 Android 13을 타겟팅하는 앱의 경우 Google 모바일 광고 SDK가 광고 ID에 액세스하려면 com.google.android.gms.permission.AD_ID 파일에 AndroidManifest.xml 권한을 추가해야 합니다.

    <manifest>
        <application>
            <meta-data
                android:name="com.google.android.gms.ads.APPLICATION_ID"
                android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/>
    
            <-- For apps targeting Android 13 or higher & GMA SDK version 20.3.0 or lower -->
            <uses-permission android:name="com.google.android.gms.permission.AD_ID"/>
    
        </application>
    </manifest>
    

    사용 중지 방법을 포함하여 com.google.android.gms.permission.AD_ID 권한 선언에 관해 자세히 알아보려면 이 Play Console 도움말을 참고하세요.

Google 모바일 광고 SDK 초기화

광고를 로드하기 전에 SDK를 초기화하고 초기화가 완료된 후 (또는 30초의 제한 시간이 경과한 후에) 완료 리스너를 다시 호출하는 MobileAds.initialize()를 앱에서 호출하여 Google 모바일 광고 SDK를 초기화합니다. 이 작업은 앱 실행 시 한 번만 처리하면 됩니다.

MobileAds.initialize()를 호출할 때 Google 모바일 광고 SDK 또는 미디에이션 파트너 SDK에서 광고를 미리 로드할 수도 있습니다. 유럽 경제 지역 (EEA) 사용자의 동의를 얻어야 하는 경우 요청별 플래그 (예: tagForChildDirectedTreatment 또는 tag_for_under_age_of_consent)를 설정하거나 광고를 로드하기 전에 조치를 취하세요. Google 모바일 광고 SDK를 초기화하기 전에 이렇게 해야 합니다.

다음은 활동에서 initialize() 메서드를 호출하는 방법을 보여주는 예입니다.

MainActivity 예시 (발췌)

자바

import com.google.android.gms.ads.MobileAds;
import com.google.android.gms.ads.initialization.InitializationStatus;
import com.google.android.gms.ads.initialization.OnInitializationCompleteListener;

public class MainActivity extends AppCompatActivity {
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        MobileAds.initialize(this, new OnInitializationCompleteListener() {
            @Override
            public void onInitializationComplete(InitializationStatus initializationStatus) {
            }
        });
    }
}

Kotlin

import com.google.android.gms.ads.MobileAds

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        MobileAds.initialize(this) {}
    }
}

미디에이션을 사용하는 경우 광고를 로드하기 전에 완료 핸들러를 호출할 때까지 기다리면 모든 미디에이션 어댑터가 초기화됩니다.

광고 형식 선택

이제 Google 모바일 광고 SDK를 가져왔으므로 이제 광고를 구현할 수 있습니다. AdMob 에서는 다양한 광고 형식을 제공하므로 앱의 사용자 경험에 가장 적합한 형식을 선택할 수 있습니다.

기기 화면의 상단이나 하단에 표시되는 직사각형 광고입니다. 배너 광고는 사용자가 앱과 상호작용하는 동안 화면에 표시되며 일정 시간이 지나면 자동으로 새로고침될 수 있습니다. 모바일 광고를 처음 시작하는 경우 이 형식부터 이용해 보시기 바랍니다.

배너 광고 구현

전면 광고

사용자가 닫을 때까지 앱의 인터페이스를 완전히 덮는 전체 화면 광고입니다. 게임 레벨이 바뀌는 사이 또는 작업 완료 직후와 같이 앱 사용이 자연스럽게 멈추는 시점에 게재하는 것이 좋습니다.

전면 광고 구현

네이티브

앱의 디자인과 스타일에 어울리게 맞춤설정할 수 있는 광고입니다. 광고 배치 방법 및 위치를 정할 수 있으므로 광고 레이아웃과 앱 디자인 간의 일관성 유지가 가능합니다.

네이티브 광고 구현

리워드 제공됨

짧은 동영상을 시청하거나 플레이어블 광고 및 설문조사와 상호작용한 사용자에게 보상하는 광고입니다. 무료 플레이 앱에서 수익을 창출하는 데 사용됩니다.

보상형 광고 구현

추가 리소스

GitHub의 Google 모바일 광고 저장소에서는 이 API에서 제공하는 다양한 광고 형식을 사용하는 방법을 보여줍니다.