Как устроен SDK
Из чего состоит
SDK — это веб-страница (для приложений) или скрипт (для сайтов). Внутри четыре части:
- VAST-плеер загружает тег, проходит wrapper-цепочки, выбирает видеофайл и отправляет трекинг рекламной системы: impression, квартили, клики, ошибки.
- Интерфейс рисует элементы поверх ролика: кнопку пропуска, переход на сайт, маркировку.
- Контроллер — объект, через который ваш код управляет показом.
- События сообщают вашему коду о каждом шаге. Способ доставки зависит от платформы.
Кто за что отвечает
В приложениях работа разделена: SDK знает всё о рекламе, а видео проигрывает ваш плеер. Так реклама идёт тем же плеером, что и контент, — с тем же качеством и аппаратным декодированием.
| Задача | SDK | Ваше приложение |
|---|---|---|
| Загрузить VAST, пройти wrapper-цепочки | ✅ | |
| Выбрать видеофайл | ✅ | |
| Проиграть видео | VPAID, браузер | ✅ |
| Сообщить время воспроизведения | ✅ timeupdateAd() | |
| Считать квартили и момент пропуска | ✅ | |
| Отправить трекинг рекламной системы | ✅ | |
| Нарисовать кнопки и маркировку | ✅ | |
Открыть сайт рекламодателя по AdClick | ✅ | |
| Закрыть рекламу и вернуться к контенту | ✅ |
Как это выглядит на экране
Страница SDK прозрачная и лежит поверх плеера приложения. Пользователь видит один экран:
SDKИнтерфейс рекламыКнопки «Пропустить», «Подробнее», маркировка ERID
WebViewСтраница SDKПрозрачный фон — сквозь него виден ролик
ПриложениеВидеоплеерПроигрывает рекламный ролик по адресу из AdLoaded
Слои
WebView — верхний слой: он принимает нажатия на кнопки SDK. Плеер приложения — под ним. Фон WebView обязательно сделайте прозрачным, иначе ролик не будет виден.
Как проходит показ
Подробный порядок событий, рекламные блоки и пропуск — в разделе Жизненный цикл.
Две поставки
| Native | Web | |
|---|---|---|
| Для кого | Android, Android TV, iOS | Сайты |
| Что это | Страница, которую открывает WebView | Скрипт ad-sdk.js и стили |
| Запуск | Сам, по параметрам в адресе | window.adSDK.init() |
| Контроллер | window.myAdController | controller.loader |
| События | window.Android / AdEventsHandler | loader.on() |
| Видео | Плеер приложения | SDK |