Перейти к основному содержимому
Версия: 3.4.0

Полноэкранная Реклама

Межстраничные объявления - это полноэкранные рекламные объявления. В Appodeal они делятся на два типа - статические межстраничные объявления и межстраничные видеообъявления.

Оба типа рекламы запрашиваются параллельно при кешировании. Если была загружена реклама обоих типов, то будет показан наиболее дорогой из креативов.

Межстраничное статичеческое объявление - статические полноэкранные баннеры.
Межстраничное видеообъявление - это видео, которое пользователь обычно может закрыть через 5 секунд после начала просмотра.

Вы можете использовать наше демо приложение в качестве примера по интеграции.

Демо приложение


Ручное Кэширование

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

  1. Для отключения автоматического кеширования для полноэкранной рекламы используйте следующий код перед инициализацией Appodeal SDK:
Appodeal.SetAutoCache(AppodealAdType.Interstitial, false);
  1. Для кеширования полноэкранной рекламы используйте следующий код:
Appodeal.Cache(AppodealAdType.Interstitial);

Проверка Загрузки

Вы можете проверить статус загрузки перед показом. Этот метод возвращает bool значение, указывающее, загружено ли межстраничное объявление.

Appodeal.IsLoaded(AppodealAdType.Interstitial);
Проверка Статуса Загрузки

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

Пример:

if(Appodeal.IsLoaded(AppodealAdType.Interstitial)) {
Appodeal.Show(AppodealShowStyle.Interstitial);
}

Отображение

Для отображения полноэкранной рекламы, используйте следующий код:

Appodeal.Show(AppodealShowStyle.Interstitial);

Методы Обратного Вызова

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

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

AppodealCallbacks.Interstitial.OnLoaded += (sender, args) => { };

Ниже перечислены все существующие ивенты для межстраничной рекламы:

public void SomeMethod()
{
AppodealCallbacks.Interstitial.OnLoaded += OnInterstitialLoaded;
AppodealCallbacks.Interstitial.OnFailedToLoad += OnInterstitialFailedToLoad;
AppodealCallbacks.Interstitial.OnShown += OnInterstitialShown;
AppodealCallbacks.Interstitial.OnShowFailed += OnInterstitialShowFailed;
AppodealCallbacks.Interstitial.OnClosed += OnInterstitialClosed;
AppodealCallbacks.Interstitial.OnClicked += OnInterstitialClicked;
AppodealCallbacks.Interstitial.OnExpired += OnInterstitialExpired;
}

#region InterstitialAd Callbacks

// Called when interstitial was loaded (precache flag shows if the loaded ad is precache)
private void OnInterstitialLoaded(object sender, AdLoadedEventArgs e)
{
Debug.Log("Interstitial loaded");
}

// Called when interstitial failed to load
private void OnInterstitialFailedToLoad(object sender, EventArgs e)
{
Debug.Log("Interstitial failed to load");
}

// Called when interstitial was loaded, but cannot be shown (internal network errors, placement settings, etc.)
private void OnInterstitialShowFailed(object sender, EventArgs e)
{
Debug.Log("Interstitial show failed");
}

// Called when interstitial is shown
private void OnInterstitialShown(object sender, EventArgs e)
{
Debug.Log("Interstitial shown");
}

// Called when interstitial is closed
private void OnInterstitialClosed(object sender, EventArgs e)
{
Debug.Log("Interstitial closed");
}

// Called when interstitial is clicked
private void OnInterstitialClicked(object sender, EventArgs e)
{
Debug.Log("Interstitial clicked");
}

// Called when interstitial is expired and can not be shown
private void OnInterstitialExpired(object sender, EventArgs e)
{
Debug.Log("Interstitial expired");
}

#endregion
Главный Поток Unity

Все методы обратного вызова вызываются в главных потоках Android/iOS, которые не совпадают с главным потоком Unity. Если вы хотите обрабатывать методы обратного вызова в главном потоке Unity, следуйте этой инструкции.


Плейсменты

Appodeal SDK позволяет помечать каждый показ указанным плейсментом. Для использования плейсментов вам необходимо сначала их создать в Appodeal Dashboard. Здесь можно найти больше информации о плейсментах.

Чтобы показывать рекламу с указанием плейсмента, используйте следующий метод:

Appodeal.Show(AppodealShowStyle.Interstitial, "placementName");

Если загруженное объявление не может быть показано для определенного плейсмента, ничего не будет показано. Если автоматическое кеширование включено, SDK начнет кешировать другое объявление, что может повлиять на display rate. Чтобы сохранить загруженное объявление для использования в будущем (например, для другого места размещения), перед вызовом метода show проверьте, можно ли показывать объявление:

if(Appodeal.CanShow(AppodealAdType.Interstitial, "placementName")) {
Appodeal.Show(AppodealShowStyle.Interstitial, "placementName");
}

Вы можете настроить логику показа для каждого плейсмента.

Если у вас нет плейсментов, или вы вызовете метод Appodeal.Show() с плейсментом, которого не существует, показ будет помечен с использованием плейсмента default, и будут применены его настройки.

Настройки плейсментов влияют ТОЛЬКО на показ рекламы, но не на загрузку или кеширование.

Получение Прогнозируемого eCPM

Этот метод возвращает ожидаемую эффективную цену за тысячу показов для закешированного объявления. Сумма рассчитывается на основе исторических данных для текущего рекламного блока.

Appodeal.GetPredictedEcpm(AppodealAdType.Interstitial);

Отключение Звука В Видео Рекламе

Этот метод поддерживается только на платформе Android

Если на устройстве пользователя установлен бесшумный режим, вы можете также отключить для него звук в видеорекламе, используя следующий метод:

Appodeal.MuteVideosIfCallsMuted(true);