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

Выберите платформу: Android iOS Unity Flutter

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

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

Предпосылки

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

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

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

ca-app-pub-3940256099942544/1033173712

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

Дополнительную информацию о работе тестовых объявлений Mobile Ads SDK см. в разделе Тестовые объявления .

Загрузить объявление

Чтобы загрузить полноэкранную рекламу, вызовите статический метод load() InterstitialAd и передайте ему InterstitialAdLoadCallback , чтобы получить загруженную рекламу или информацию о возможных ошибках. Обратите внимание, что, как и другие обратные вызовы загрузки форматов, InterstitialAdLoadCallback использует LoadAdError для предоставления более точной информации об ошибках.

Ява

InterstitialAd.load(
    this,
    AD_UNIT_ID,
    new AdRequest.Builder().build(),
    new InterstitialAdLoadCallback() {
      @Override
      public void onAdLoaded(@NonNull InterstitialAd interstitialAd) {
        Log.d(TAG, "Ad was loaded.");
        MyActivity.this.interstitialAd = interstitialAd;
      }

      @Override
      public void onAdFailedToLoad(@NonNull LoadAdError loadAdError) {
        Log.d(TAG, loadAdError.getMessage());
        interstitialAd = null;
    });

Котлин

InterstitialAd.load(
  this,
  AD_UNIT_ID,
  AdRequest.Builder().build(),
  object : InterstitialAdLoadCallback() {
    override fun onAdLoaded(ad: InterstitialAd) {
      Log.d(TAG, "Ad was loaded.")
      interstitialAd = ad
    }

    override fun onAdFailedToLoad(adError: LoadAdError) {
      Log.d(TAG, adError.message)
      interstitialAd = null
    }
  },
)

Установите FullScreenContentCallback

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

Ява

interstitialAd.setFullScreenContentCallback(
    new FullScreenContentCallback() {
      @Override
      public void onAdDismissedFullScreenContent() {
        // Called when fullscreen content is dismissed.
        Log.d(TAG, "The ad was dismissed.");
        // Make sure to set your reference to null so you don't
        // show it a second time.
        MyActivity.this.interstitialAd = null;
      }

      @Override
      public void onAdFailedToShowFullScreenContent(AdError adError) {
        // Called when fullscreen content failed to show.
        Log.d(TAG, "The ad failed to show.");
        // Make sure to set your reference to null so you don't
        // show it a second time.
        MyActivity.this.interstitialAd = null;
      }

      @Override
      public void onAdShowedFullScreenContent() {
        // Called when fullscreen content is shown.
        Log.d(TAG, "The ad was shown.");
      }

      @Override
      public void onAdImpression() {
        // Called when an impression is recorded for an ad.
        Log.d(TAG, "The ad recorded an impression.");
      }

      @Override
      public void onAdClicked() {
        // Called when ad is clicked.
        Log.d(TAG, "The ad was clicked.");
      }
    });

Котлин

interstitialAd?.fullScreenContentCallback =
  object : FullScreenContentCallback() {
    override fun onAdDismissedFullScreenContent() {
      // Called when fullscreen content is dismissed.
      Log.d(TAG, "Ad was dismissed.")
      // Don't forget to set the ad reference to null so you
      // don't show the ad a second time.
      interstitialAd = null
    }

    override fun onAdFailedToShowFullScreenContent(adError: AdError) {
      // Called when fullscreen content failed to show.
      Log.d(TAG, "Ad failed to show.")
      // Don't forget to set the ad reference to null so you
      // don't show the ad a second time.
      interstitialAd = null
    }

    override fun onAdShowedFullScreenContent() {
      // Called when fullscreen content is shown.
      Log.d(TAG, "Ad showed fullscreen content.")
    }

    override fun onAdImpression() {
      // Called when an impression is recorded for an ad.
      Log.d(TAG, "Ad recorded an impression.")
    }

    override fun onAdClicked() {
      // Called when ad is clicked.
      Log.d(TAG, "Ad was clicked.")
    }
  }

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

Полосатая реклама должна отображаться во время естественных пауз в работе приложения. Хорошим примером служат паузы между уровнями игры или после того, как пользователь выполнил задание. Для показа полноэкранной рекламы используйте метод show() .

Ява

if (interstitialAd != null) {
  interstitialAd.show(this);
} else {
  Log.d(TAG, "The interstitial ad is still loading.");
}

Котлин

interstitialAd?.show(this)

Некоторые лучшие практики

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

Исходный код

Примеры на GitHub

  • Пример межстраничной рекламы: Java | Kotlin

Истории успеха

Следующие шаги