시작하기

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:22.4.0'
    }
    
  3. AdMob웹 인터페이스에서 식별된 앱 ID를 앱의 AndroidManifest.xml 파일에 추가합니다. AdMob 이렇게 하려면 android:name="com.google.android.gms.ads.APPLICATION_ID"가 있는 <meta-data> 태그를 추가합니다. 앱 ID는 AdMob 웹 인터페이스에서 확인할 수 있습니다. 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 초기화

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

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

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

MainActivity 예시 (발췌)

Java

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가 제공하는 다양한 광고 형식을 사용하는 방법을 보여줍니다.