Skip to content

Жизненный цикл рекламы

Состояния показа

Каждый показ заканчивается событием AdDestroyed — чем бы он ни закончился.

Один ролик

События во времени

Пример для ролика 20 секунд, который можно пропустить через 5 секунд:

0 с5 с10 с15 с20 с
  1. AdStarted0 с · playAd()
  2. AdFirstQuartile5 с · 25 %
  3. AdSkippableStateChanged5 с · skipoffset 5 с
  4. AdMidpoint10 с · 50 %
  5. AdThirdQuartile15 с · 75 %
  6. AdComplete20 с · 100 %

Откуда SDK знает время

В приложениях квартили и момент пропуска SDK считает по вызовам timeupdateAd(). Если их нет, событий после AdStarted не будет. В браузере и для VPAID время SDK берёт сам.

Рекламный блок (ad pod)

Если VAST содержит несколько роликов, SDK показывает их по очереди. Каждый ролик проходит свой цикл от AdLoaded до AdDestroyed.

СобытиеСколько раз
AdStartedОдин раз за блок
AdLoaded, AdCreativeStarted, квартили, AdComplete, AdDestroyedДля каждого ролика
AdPodCompletedОдин раз, после последнего ролика
AdsEndedОдин раз, в конце всей рекламы (только браузер)

ad_number — номер ролика в блоке, начиная с 1. У рекламы из одного ролика ad_number равен -1.

Пропуск

Время пропуска задаёт VAST (skipoffset). Если у ролика его нет, ролик нельзя пропустить и кнопка не появляется.

Клик по рекламе

SDK не открывает ссылку сам: это делает приложение по событию AdClick. Как вести себя после перехода — закрыть рекламу или поставить на паузу — подсказывает getAdCloseAct().

Ошибки

Коды ошибок — в разделе Ошибки.

Когда закрывать рекламу

В приложении — закройте WebView, в браузере — вызовите controller.destroy().