단일 로드 API가 포함된 SDK입니다.
앱 오프닝 광고는 앱 로드 화면을 통해 수익을 올리려는 게시자를 위해 개발된 특별한 광고 형식입니다. 앱 오프닝 광고는 언제든지 닫을 수 있으며 사용자가 앱을 포그라운드로 가져올 때 표시되도록 설계되었습니다.
자세한 내용은 앱 오프닝 광고 안내를 참고하세요.이 가이드에서는 앱 오프닝 광고를 Android 앱에 통합하는 방법을 설명합니다.
기본 요건
항상 테스트 광고로 테스트
앱을 빌드하고 테스트할 때는 운영 중인 실제 광고 대신 테스트 광고를 사용하세요. 그렇지 않을 경우 계정이 정지될 수 있습니다.
테스트 광고를 로드하려면 Android 앱 오프닝 광고 전용 테스트 광고 단위 ID를 사용하세요.
ca-app-pub-3940256099942544/9257395921
이 광고 단위 ID는 모든 요청에 대해 테스트 광고를 반환하도록 특별히 구성되었습니다. 코딩, 테스트 및 디버깅 중에 앱에서 자유롭게 사용할 수 있습니다. 앱을 게시하기 전에 이 ID를 자체 광고 단위 ID로 바꿔야 합니다.
GMA Next-Gen SDK 테스트 광고에 관한 자세한 내용은 테스트 광고 사용 설정을 참고하세요.
광고 로드하기
다음 예에서는 단일 광고를 로드하는 방법을 보여줍니다.
Kotlin
// Load ads after you initialize MobileAds. AppOpenAd.load( AdRequest.Builder(adUnitId).build(), object : AdLoadCallback<AppOpenAd> { override fun onAdLoaded(ad: AppOpenAd) { // App open ad loaded. appOpenAd = ad } override fun onAdFailedToLoad(adError: LoadAdError) { // App open ad failed to load. Log.e(TAG, "App open ad failed to load: ${adError.message}") appOpenAd = null } }, )
자바
// Load ads after you initialize MobileAds. AppOpenAd.load( new AdRequest.Builder(adUnitId).build(), new AdLoadCallback<AppOpenAd>() { @Override public void onAdLoaded(AppOpenAd ad) { // App open ad loaded. appOpenAd = ad; } @Override public void onAdFailedToLoad(LoadAdError adError) { // App open ad failed to load. Log.e(TAG, "App open ad failed to load: " + adError.getMessage()); appOpenAd = null; } });
테스트할 때는 테스트 광고 단위 ID ca-app-pub-3940256099942544/9257395921을 사용하세요.
광고 게재하기
앱 오프닝 광고를 게재하려면 show 메서드를 사용하세요.
Kotlin
private fun showAd(appOpenAd: AppOpenAd, activity: Activity) { // Show the ad. appOpenAd.show(activity) }
자바
private void showAd(AppOpenAd appOpenAd, Activity activity) { // Show the ad. appOpenAd.show(activity); }
광고 이벤트 수신 대기
광고를 게재하기 전에 광고 수명 주기 이벤트를 수신 대기합니다.
Kotlin
private fun listenToAdEvents() { // Listen for ad events. val ad = appOpenAd if (ad == null) { Log.e(TAG, "App open ad is not ready yet.") return } ad.adEventCallback = object : AppOpenAdEventCallback { override fun onAdShowedFullScreenContent() { // App open ad did show. } override fun onAdDismissedFullScreenContent() { // App open ad did dismiss. appOpenAd = null } override fun onAdFailedToShowFullScreenContent( fullScreenContentError: FullScreenContentError ) { // App open ad failed to show. Log.e(TAG, "App open ad failed to show: ${fullScreenContentError.message}") } override fun onAdImpression() { // App open ad did record an impression. } override fun onAdClicked() { // App open ad did record a click. } } }
자바
private void listenToAdEvents() { // Listen for ad events. if (appOpenAd == null) { Log.e(TAG, "App open ad is not ready yet."); return; } appOpenAd.setAdEventCallback( new AppOpenAdEventCallback() { @Override public void onAdShowedFullScreenContent() { // App open ad did show. } @Override public void onAdDismissedFullScreenContent() { // App open ad did dismiss. appOpenAd = null; } @Override public void onAdFailedToShowFullScreenContent( @NonNull FullScreenContentError fullScreenContentError) { // App open ad failed to show. Log.e(TAG, "App open ad failed to show: " + fullScreenContentError.getMessage()); } @Override public void onAdImpression() { // App open ad did record an impression. } @Override public void onAdClicked() { // App open ad did record a click. } }); }
콜드 스타트 및 로드 화면
콜드 스타트는 앱이 처음부터 실행될 때 발생합니다. 예를 들어 사용자가 앱을 처음으로 열거나 메모리 종료 후 앱을 열 때 발생합니다. 콜드 스타트 중에는 즉시 게재할 수 있도록 미리 로드된 앱 오프닝 광고가 없습니다.
광고 요청 지연으로 인해 앱 오프닝 광고가 표시되기 전에 사용자가 앱과 상호작용할 수 있습니다. 사용자 환경이 저하되지 않도록 하려면 앱 애셋이 로드되는 동안 로드 화면에서만 콜드 스타트 시 앱 오프닝 광고를 게재하세요. 애셋 로드가 완료되고 광고가 로드되기 전에 사용자가 기본 콘텐츠에 도달하면 광고를 게재하지 마세요.
광고가 표시되는 동안 로드가 계속되도록 백그라운드 스레드에서 앱 애셋을 로드합니다.
권장사항
앱 오프닝 광고에 관한 다음 권장사항을 따르세요.
- 사용자가 앱을 여러 번 연 후에만 첫 번째 앱 오프닝 광고를 게재합니다.
- 사용자가 앱이 로드될 때까지 기다리는 동안에만 앱 오프닝 광고를 게재합니다.
- 광고가 표시되는 동안 로드 화면에서 로드가 완료되면 광고가 사라진 콜백 메서드에서 로드 화면을 닫습니다.