3.0.0
Первый релиз с единой версией для всех платформ и публичной документацией. Предыдущие сборки имели отдельные номера для Android, iOS и браузера. Начиная с 3.0.0 версия одна.
Критические изменения
- Номер версии теперь общий для Android, Android TV, iOS и браузера. Указывайте в адресе SDK версию
3.0.0вместо платформенных номеров. в VAST-ссылке теперь заменяется на3.0.0(раньше —2.5.0).- iOS Ошибка до загрузки рекламы приходит в том же формате, что и остальные события:
{ name: "AdError", code, message, type, … }вместо поляdata. - Web Код ошибки запрета воспроизведения —
permission_denied(раньшеpremission denied). autoplay=falseиautoplay=0больше не включают автозапуск.
Новое
- Адрес SDK на CDN: платформа и версия в пути —
https://cdn.adsdk.ru/android/v3/. Каналv3получает все исправления 3.x,v3.0.0не меняется никогда,latest— для отладки. Параметрosпо-прежнему работает для адресов без платформы в пути. - Обновлён интерфейс рекламы на Android, Android TV и iOS: новое расположение кнопок и затемнение под ними для читаемости.
- Android TV Элемент
ad-notice— пояснение о рекламе в углу экрана. - Значение
allвcontrolsвключает все элементы, доступные на платформе. - SDK ждёт, пока у страницы появятся размеры, и только потом загружает рекламу. Если за 3 секунды размеры не появились, приходит
AdErrorс кодомviewport_unavailable. - Параметр
os=webв WebView теперь сразу возвращаетAdErrorс кодомweb_ui_in_native_build.
Исправлено
- Android Ошибка до загрузки рекламы приходит в
AdErrorодин раз, а не дважды. SDK сам выбирает сигнатуру, объявленную в приложении: 6, 4 или 3 аргумента. - Android
AdPodCompletedполучаетad_is_lastвместоundefined. AdPodCompletedсообщает настоящую длину блока, а не0, и число показанных роликовad_pod_showed_countна всех платформах.AdSkippableStateChangedпередаётstatus: true, а не объект события. На Android методAdSkippableStateChanged(Boolean)теперь вызывается.- Web Стили подключаются по постоянному адресу
style.css. - Web
AdsEndedприходит один раз, а не дважды. getAdCurrentTimeSec()возвращает секунды, а не миллисекунды. Когда видео играет плеер приложения, возвращается время изtimeupdateAd(), поэтому обратный отсчёт на кнопке пропуска идёт правильно.getAdSkippableState()возвращаетtrueпослеAdSkippableStateChanged, в том числе когда видео играет плеер приложения.- В рекламном блоке каждый ролик становится пропускаемым: раньше
AdSkippableStateChangedприходил только для первого. - С
autoplayв WebView ролик становится пропускаемым черезskipoffset, а не сразу после старта. - Если платформу не удалось определить, используется
android, а не пустой интерфейс. - Некорректные значения
ad_media_file_widthиad_media_max_duration_secигнорируются, а не ломают подбор видеофайла. AdLoaded, квартили иAdCompleteприходят ровно один раз на ролик, в том числе для VPAID.- Web Трекинг досмотра
AdComplete. - Web Ошибка необработанного отклонения промиса при запуске показа.