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

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

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

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

Предпосылки

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

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

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

ca-app-pub-3940256099942544/1033173712

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

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

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

Чтобы загрузить промежуточную рекламу, вызовите статический метод загрузки InterstitialAd load() и передайте 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.")
    }
  }

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

Рекламные объявления Interstitial должны отображаться во время естественных пауз в потоке приложения. Хорошим примером является пауза между уровнями игры или после того, как пользователь выполнил задачу. Чтобы показать interstitial, используйте метод show() .

Ява

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

Котлин

interstitialAd?.show(this)

Некоторые передовые практики

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

Исходный код

Примеры на

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

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

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