Межстраничные объявления

Выберите платформу: Android (бета-версия) Новоизбранный Android iOS Unity Flutter

Межстраничные объявления — это полноэкранные рекламные объявления, которые закрывают интерфейс соответствующего приложения. Обычно они отображаются в естественных точках перехода в процессе работы приложения, например, между действиями или во время паузы между уровнями в игре. Когда приложение показывает межстраничное объявление, пользователь может либо нажать на объявление и перейти к следующему шагу, либо закрыть его и вернуться в приложение. Ознакомьтесь с одним из наших примеров использования .

В этом руководстве объясняется, как интегрировать межстраничную рекламу в приложение для Android.

Предварительные требования

  • Пройдите руководство по началу работы .
  • Всегда проводите тестирование с помощью тестовых объявлений.

    При разработке и тестировании приложений обязательно используйте тестовые объявления, а не реальные, рабочие объявления. Несоблюдение этого правила может привести к блокировке вашего аккаунта.

    Самый простой способ загрузить тестовую рекламу — использовать наш специальный идентификатор тестового рекламного блока для межстраничной рекламы в Android:

    ca-app-pub-3940256099942544/1033173712

    Он специально настроен на возврат тестовых объявлений для каждого запроса, и вы можете свободно использовать его в своих приложениях во время кодирования, тестирования и отладки. Просто убедитесь, что вы заменили его на свой собственный идентификатор рекламного блока перед публикацией приложения.

    Подробную информацию о тестовой рекламе в GMA Next-Gen SDK см. в разделе «Включить тестовую рекламу» .

    Загрузить рекламу

    Для загрузки рекламы GMA Next-Gen SDK предлагает следующее:

    Загрузка с использованием API для загрузки отдельных объявлений.

    В следующем примере показано, как загрузить отдельное объявление:

    Котлин

    import com.google.android.libraries.ads.mobile.sdk.common.AdLoadCallback
    import com.google.android.libraries.ads.mobile.sdk.common.AdRequest
    import com.google.android.libraries.ads.mobile.sdk.common.FullScreenContentError
    import com.google.android.libraries.ads.mobile.sdk.common.LoadAdError
    import com.google.android.libraries.ads.mobile.sdk.interstitial.InterstitialAd
    import com.google.android.libraries.ads.mobile.sdk.interstitial.InterstitialAdEventCallback
    import com.google.android.libraries.ads.mobile.sdk.MobileAds
    
    class InterstitialActivity : Activity() {
      private var interstitialAd: InterstitialAd? = null
    
      override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
    
        // Load ads after you initialize GMA Next-Gen SDK.
        InterstitialAd.load(
          AdRequest.Builder(AD_UNIT_ID).build(),
          object : AdLoadCallback<InterstitialAd> {
            override fun onAdLoaded(ad: InterstitialAd) {
              // Interstitial ad loaded.
              interstitialAd = ad
            }
    
            override fun onAdFailedToLoad(adError: LoadAdError) {
              // Interstitial ad failed to load.
              interstitialAd = null
            }
          },
        )
      }
    
      companion object {
        // Sample interstitial ad unit ID.
        const val AD_UNIT_ID = "ca-app-pub-3940256099942544/1033173712"
      }
    }
    

    Java

    import com.google.android.libraries.ads.mobile.sdk.common.AdLoadCallback;
    import com.google.android.libraries.ads.mobile.sdk.common.AdRequest;
    import com.google.android.libraries.ads.mobile.sdk.common.FullScreenContentError;
    import com.google.android.libraries.ads.mobile.sdk.common.LoadAdError;
    import com.google.android.libraries.ads.mobile.sdk.interstitial.InterstitialAd;
    import com.google.android.libraries.ads.mobile.sdk.interstitial.InterstitialAdEventCallback;
    import com.google.android.libraries.ads.mobile.sdk.MobileAds;
    
    class InterstitialActivity extends Activity {
      // Sample interstitial ad unit ID.
      private static final String AD_UNIT_ID = "ca-app-pub-3940256099942544/1033173712";
      private InterstitialAd interstitialAd;
    
      @Override
      protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    
        // Load ads after you initialize GMA Next-Gen SDK.
        InterstitialAd.load(
            new AdRequest.Builder(AD_UNIT_ID).build(),
            new AdLoadCallback<InterstitialAd>() {
              @Override
              public void onAdLoaded(@NonNull InterstitialAd interstitialAd) {
                // Interstitial ad loaded.
                AdLoadCallback.super.onAdLoaded(interstitialAd);
                InterstitialActivity.this.interstitialAd = interstitialAd;
              }
    
              @Override
              public void onAdFailedToLoad(@NonNull LoadAdError adError) {
                // Interstitial ad failed to load.
                AdLoadCallback.super.onAdFailedToLoad(adError);
                interstitialAd = null;
              }
            }
        );
      }
    }
    

    Загрузка с использованием API предварительной загрузки рекламы.

    Для начала предварительной загрузки выполните следующие действия:

    1. Инициализируйте конфигурацию предварительной загрузки с помощью запроса на показ рекламы.

    2. Запустите предзагрузчик для межстраничных объявлений, используя идентификатор вашего рекламного блока и конфигурацию предзагрузки:

    Котлин

    private fun startPreloading(adUnitId: String) {
      val adRequest = AdRequest.Builder(adUnitId).build()
      val preloadConfig = PreloadConfiguration(adRequest)
      InterstitialAdPreloader.start(adUnitId, preloadConfig)
    }
    
    

    Java

    private void startPreloading(String adUnitId) {
      AdRequest adRequest = new AdRequest.Builder(adUnitId).build();
      PreloadConfiguration preloadConfig = new PreloadConfiguration(adRequest);
      InterstitialAdPreloader.start(adUnitId, preloadConfig);
    }
    
    

    Реклама постоянно отображается по мере ее показа. В следующем примере происходит запрос на показ рекламы из загрузочного окна:

    Котлин

    // Polling returns the next available ad and loads another ad in the background.
    val ad = InterstitialAdPreloader.pollAd(adUnitId)
    

    Java

    // Polling returns the next available ad and loads another ad in the background.
    final InterstitialAd ad = InterstitialAdPreloader.pollAd(adUnitId);
    

    Настройте обработчик события InterstituialAdEventCallback.

    Функция InterstitialAdEventCallback обрабатывает события, связанные с отображением вашей InterstitialAd . Перед показом межстраничной рекламы обязательно установите функцию обратного вызова:

    Котлин

    // Listen for ad events.
    interstitialAd?.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.
          interstitialAd = null
        }
    
        override fun onAdImpression() {
          // Interstitial ad did record an impression.
        }
    
        override fun onAdClicked() {
          // Interstitial ad did record a click.
        }
      }
    

    Java

    // Listen for ad events.
    interstitialAd.setAdEventCallback(
        new InterstitialAdEventCallback() {
          @Override
          public void onAdShowedFullScreenContent() {
            // Interstitial ad did show.
            InterstitialAdEventCallback.super.onAdShowedFullScreenContent();
          }
    
          @Override
          public void onAdDismissedFullScreenContent() {
            // Interstitial ad did dismiss.
            InterstitialAdEventCallback.super.onAdDismissedFullScreenContent();
            interstitialAd = null;
          }
    
          @Override
          public void onAdFailedToShowFullScreenContent(
              @NonNull FullScreenContentError fullScreenContentError) {
            // Interstitial ad failed to show.
            InterstitialAdEventCallback.super.onAdFailedToShowFullScreenContent(
                fullScreenContentError);
            initerstitialAd = null;
          }
    
          @Override
          public void onAdImpression() {
            // Interstitial ad did record an impression.
            InterstitialAdEventCallback.super.onAdImpression();
          }
    
          @Override
          public void onAdClicked() {
            // Interstitial ad did record a click.
            InterstitialAdEventCallback.super.onAdClicked();
          }
        }
    );
    

    Показать рекламу

    Для показа межстраничной рекламы используйте метод show() .

    Котлин

    // Show the ad.
    interstitialAd?.show(this@InterstitialActivity)
    

    Java

    // Show the ad.
    interstitialAd.show(InterstitialActivity.this);
    

    Некоторые передовые методы

    Подумайте, подходят ли для вашего приложения межстраничные объявления.
    Межстраничная реклама наиболее эффективна в приложениях с естественными точками перехода. Завершение задачи внутри приложения, например, отправка изображения или прохождение уровня игры, создает такую ​​точку. Обязательно продумайте, на каких этапах работы вашего приложения вы будете показывать межстраничную рекламу и как, скорее всего, отреагирует пользователь.
    Не забудьте приостановить показ межстраничной рекламы.
    Существует несколько различных типов межстраничной рекламы: текстовая, графическая, видео и другие. Важно убедиться, что при показе межстраничной рекламы ваше приложение также приостанавливает использование некоторых ресурсов, чтобы реклама могла ими воспользоваться. Например, при вызове функции показа межстраничной рекламы обязательно приостановите воспроизведение любого аудиофайла вашим приложением.
    Предусмотрите достаточное время для погрузки.
    Так же, как важно показывать межстраничную рекламу в подходящее время, важно также убедиться, что пользователю не приходится ждать ее загрузки. Предварительная загрузка рекламы путем вызова load() перед вызовом show() гарантирует, что в вашем приложении будет полностью загружена межстраничная реклама, готовая к показу, когда придет время ее отобразить.
    Не заваливайте пользователя рекламой.
    Увеличение частоты показа межстраничной рекламы в вашем приложении может показаться отличным способом увеличить доход, но это также может ухудшить пользовательский опыт и снизить коэффициент кликабельности. Убедитесь, что пользователи не сталкиваются с такими частыми прерываниями, которые мешают им получать удовольствие от использования вашего приложения.

    Пример

    Загрузите и запустите пример приложения , демонстрирующий использование GMA Next-Gen SDK.