전면 광고는 앱 인터페이스를 가리는 전체 화면 광고입니다. 이러한 광고는 활동이 바뀌는 시점 또는 게임에서 다음 레벨로 넘어갈 때처럼 앱 흐름에서 자연스러운 전환 시점에 게재됩니다.
앱에 전면 광고가 표시되면 사용자는 광고를 탭하여 계속 진행하거나 광고를 닫고 앱으로 돌아갈 수 있습니다.
이 가이드에서는 전면 광고를 Android 앱에 통합하는 방법을 설명합니다.
시작하기 전에
계속하기 전에 다음을 수행하세요.
- GMA Next-Gen SDK를 설정합니다.
- 테스트 전면 광고 단위 ID
/21775744923/example/interstitial를 사용합니다.- 앱을 빌드하고 테스트할 때는 운영 중인 실제 광고 대신 테스트 광고를 사용하세요. 테스트 광고 단위 ID를 사용하지 않으면 Google에서 계정을 정지할 수 있습니다.
- 앱을 게시하기 전에 이 ID를 광고 단위 ID로 바꿔야 합니다.
- GMA Next-Gen SDK 테스트 광고에 관한 자세한 내용은 테스트 광고 사용 설정을 참고하세요.
광고 로드하기
다음 예에서는 단일 광고를 로드합니다.
Kotlin
// Load ads after you initialize MobileAds. InterstitialAd.load( AdRequest.Builder(adUnitId).build(), object : AdLoadCallback<InterstitialAd> { override fun onAdLoaded(ad: InterstitialAd) { // Interstitial ad loaded. interstitialAd = ad } override fun onAdFailedToLoad(adError: LoadAdError) { // Interstitial ad failed to load. Log.e(TAG, "Interstitial ad failed to load: ${adError.message}") interstitialAd = null } }, )
자바
// Load ads after you initialize MobileAds. InterstitialAd.load( new AdRequest.Builder(adUnitId).build(), new AdLoadCallback<InterstitialAd>() { @Override public void onAdLoaded(@NonNull InterstitialAd ad) { // Interstitial ad loaded. interstitialAd = ad; } @Override public void onAdFailedToLoad(@NonNull LoadAdError adError) { // Interstitial ad failed to load. Log.e(TAG, "Interstitial ad failed to load: " + adError.getMessage()); interstitialAd = null; } });
테스트할 때는 테스트 광고 단위 ID /21775744923/example/interstitial를 사용하세요.
광고 게재
전면 광고를 게재하려면show 메서드를 호출합니다.
다음 예에서는 광고를 표시합니다.
Kotlin
private fun showAd(interstitialAd: InterstitialAd, activity: Activity) { // Show the ad. interstitialAd.show(activity) }
자바
private void showAd(InterstitialAd interstitialAd, Activity activity) { // Show the ad. interstitialAd.show(activity); }
광고 이벤트 수신 대기
광고를 표시하기 전에 광고 수명 주기 이벤트를 수신 대기합니다. 다음 예에서는 광고 이벤트의 콜백을 등록합니다.
Kotlin
// Listen for ad events. val ad = interstitialAd if (ad == null) { Log.e(TAG, "Interstitial ad is not ready yet.") return } ad.adEventCallback = object : InterstitialAdEventCallback { override fun onAdShowedFullScreenContent() { // Interstitial ad did show. } override fun onAdDismissedFullScreenContent() { // Interstitial ad did dismiss. interstitialAd = null } override fun onAdFailedToShowFullScreenContent( fullScreenContentError: FullScreenContentError ) { // Interstitial ad failed to show. Log.e(TAG, "Interstitial ad failed to show: ${fullScreenContentError.message}") } override fun onAdImpression() { // Interstitial ad did record an impression. } override fun onAdClicked() { // Interstitial ad did record a click. } }
Java
// Listen for ad events. if (interstitialAd == null) { Log.e(TAG, "Interstitial ad is not ready yet."); return; } interstitialAd.setAdEventCallback( new InterstitialAdEventCallback() { @Override public void onAdShowedFullScreenContent() { // Interstitial ad did show. } @Override public void onAdDismissedFullScreenContent() { // Interstitial ad did dismiss. interstitialAd = null; } @Override public void onAdFailedToShowFullScreenContent( @NonNull FullScreenContentError fullScreenContentError) { // Interstitial ad failed to show. Log.e(TAG, "Interstitial ad failed to show: " + fullScreenContentError.getMessage()); } @Override public void onAdImpression() { // Interstitial ad did record an impression. } @Override public void onAdClicked() { // Interstitial ad did record a click. } });