Подключение полноэкранной рекламы
Это архивная версия документации. Актуальная документация по всем платформам находится здесь.
Полноэкранная реклама (Interstitial) — настраиваемое объявление, отображаемое на весь экран и реагирующее на нажатие.
Создание и показ InterstitialAd
Добавьте импорт:
import 'package:yandex_mobileads/mobile_ads.dart';
СкопированоСоздайте объект класса
InterstitialAd
. Объект может быть создан только асинхронно:final ad = await InterstitialAd.create( adUnitId: 'R-M-XXXXXX-Y', onAdLoaded: () { /* Do something */ }, onAdFailedToLoad: (error) { /* Do something */ }, );
СкопированоПосле создания объекта класса
InterstitialAd
рекламу необходимо загрузить. Для загрузки рекламы используйте методload
, принимающий в себя опциональный объектAdRequest
:await ad.load(adRequest: AdRequest());
СкопированоМожно дождаться загрузки рекламы асинхронно с помощью ключевого слова
await
. В случае ошибки загрузки произойдет вызовonAdFailedToLoad
и ожидание будет прервано.Загрузка полноэкранной рекламы происходит в фоновом потоке сразу после вызова метода
load
. Чтобы показать полноэкранную рекламу, необходимо вызвать методshow
:await ad.show();
СкопированоМожно дождаться начала показа рекламы асинхронно.
Также можно дождаться конца показа рекламы с помощью асинхронного метода
waitForDismiss
:await ad.waitForDismiss();
Скопировано
Пример работы с полноэкранной рекламой
Код демонстрирует создание и настройку объекта InterstitialAd
, загрузку и отображение полноэкранной рекламы:
Future<void> showInterstitialAd() async { final ad = await InterstitialAd.create( adUnitId: 'demo-interstitial-yandex', onAdLoaded: () { /* Do something */ }, onAdFailedToLoad: (error) { /* Do something */ }, ); await ad.load(adRequest: AdRequest()); await ad.show(); await ad.waitForDismiss(); }
Скопировано
Если реклама подключена данным образом, при вызове showInterstitialAd
появится рекламный блок.
- demo-interstitial-yandex