Межстраничный

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

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

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

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

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

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

  • /21775744923/example/interstitial

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

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

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

class InterstitialExampleState extends State<InterstitialExample> {
  AdManagerInterstitialAd? _interstitialAd;

  // TODO: replace this test ad unit with your own ad unit.
  final adUnitId = '/21775744923/example/interstitial';

  /// Loads an interstitial ad.
  void loadAd() {
    AdManagerInterstitialAd.load(
        adUnitId: adUnitId,
        request: const AdManagerAdRequest(),
        adLoadCallback: AdManagerInterstitialAdLoadCallback(
          // Called when an ad is successfully received.
          onAdLoaded: (ad) {
            debugPrint('$ad loaded.');
            // Keep a reference to the ad so you can show it later.
            _interstitialAd = ad;
          },
          // Called when an ad request failed.
          onAdFailedToLoad: (LoadAdError error) {
            debugPrint('AdManagerInterstitialAd failed to load: $error');
          },
        ));
  }
}

События интерстициальной рекламы

Используя FullScreenContentCallback , вы можете прослушивать события жизненного цикла, например, когда реклама отображается или закрывается. Установите AdManagerInterstitialAd.fullScreenContentCallback перед показом рекламы, чтобы получать уведомления об этих событиях. В этом примере реализуется каждый метод:

class InterstitialExampleState extends State<InterstitialExample> {
  AdManagerInterstitialAd? _interstitialAd;

  // TODO: replace this test ad unit with your own ad unit.
  final adUnitId = '/21775744923/example/interstitial';

  /// Loads an interstitial ad.
  void loadAd() {
    AdManagerInterstitialAd.load(
        adUnitId: adUnitId,
        request: const AdManagerAdRequest(),
        adLoadCallback: AdManagerInterstitialAdLoadCallback(
          // Called when an ad is successfully received.
          onAdLoaded: (ad) {
             ad.fullScreenContentCallback = FullScreenContentCallback(
                // Called when the ad showed the full screen content.
                onAdShowedFullScreenContent: (ad) {},
                // Called when an impression occurs on the ad.
                onAdImpression: (ad) {},
                // Called when the ad failed to show full screen content.
                onAdFailedToShowFullScreenContent: (ad, err) {
                  // Dispose the ad here to free resources.
                  ad.dispose();
                },
                // Called when the ad dismissed full screen content.
                onAdDismissedFullScreenContent: (ad) {
                  // Dispose the ad here to free resources.
                  ad.dispose();
                },
                // Called when a click is recorded for an ad.
                onAdClicked: (ad) {});

            debugPrint('$ad loaded.');
            // Keep a reference to the ad so you can show it later.
            _interstitialAd = ad;
          },
          // Called when an ad request failed.
          onAdFailedToLoad: (LoadAdError error) {
            debugPrint('AdManagerInterstitialAd failed to load: $error');
          },
        ));
  }
}

Отображение промежуточной рекламы

AdManagerInterstitialAd отображается как Overlay поверх всего содержимого приложения и размещается статически; таким образом, его нельзя добавить в дерево виджетов Flutter. Вы можете выбрать, когда показывать рекламу, вызвав show() .

_interstitiaAd.show();

После вызова show() отображаемая таким образом Ad не может быть отклонена программно и требует ввода данных пользователем. AdManagerInterstitialAd может быть показан только один раз. Последующие вызовы show вызовут onAdFailedToShowFullScreenContent .

Рекламу необходимо удалить, когда доступ к ней больше не нужен. Лучшая практика вызова dispose() — в обратных вызовах FullScreenContentCallback.onAdDismissedFullScreenContent и FullScreenContentCallback.onAdFailedToShowFullScreenContent .

Вот и все! Теперь ваше приложение готово к показу промежуточной рекламы.

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