IMA SDK позволяет легко интегрировать мультимедийные объявления на сайты и в приложения. IMA SDK может запрашивать объявления с любого совместимого с VAST сервера объявлений и управлять воспроизведением рекламы в ваших приложениях. С помощью IMA DAI SDK приложения отправляют запрос потока для видеообъявления и контента (видео по запросу или трансляции). Затем SDK возвращает объединенный видеопоток, чтобы вам не приходилось переключаться между видеообъявлением и контентом в приложении.
Выберите решение для динамической вставки объявлений
Полный сервис динамической вставки объявлений
В этом руководстве рассказывается, как интегрировать IMA DAI SDK в приложение видеопроигрывателя. Если вы хотите посмотреть или использовать готовый пример интеграции, скачайте BasicExample с GitHub.
Общие сведения о динамической вставке объявлений с помощью IMA SDK
Внедрение IMA DAI включает четыре основных компонента SDK, как показано в этом руководстве:
IMAAdDisplayContainer– объект-контейнер, который находится поверх элемента воспроизведения видео и содержит элементы интерфейса объявления.IMAAdsLoader– объект, который запрашивает потоки и обрабатывает события, инициированные объектами ответов на запросы потоков. В приложении должен быть только один загрузчик объявлений, который можно использовать многократно.IMAStreamRequest–IMAVODStreamRequestилиIMALiveStreamRequest. Объект, определяющий запрос потока. Запросы потоков могут относиться к видео по запросу или прямым трансляциям. В запросах трансляций указывается ключ объекта, а в запросах видео по запросу – идентификатор CMS и идентификатор видео. В запросах обоих типов можно указать ключ API, необходимый для доступа к определенным потокам, и код сети Google Менеджера рекламы, чтобы IMA SDK обрабатывал идентификаторы объявлений в соответствии с настройками Google Менеджера рекламы.IMAStreamManager– объект, который обрабатывает потоки динамической вставки объявлений и взаимодействия с серверной частью DAI. Менеджер потоков также обрабатывает запросы на отслеживание и пересылает издателю события потока и объявлений.
Требования
Прежде чем начать, вам понадобится следующее:
- Xcode 13 или более поздняя версия
- Способ установки IMA SDK:
- Swift Package Manager (рекомендуется)
- Копия для скачивания IMA SDK для iOS
Кроме того, параметры необходимы для запроса трансляции из IMA SDK. Примеры параметров запроса можно найти в разделе Примеры потоков.
| Параметры трансляции | |
|---|---|
| Ключ объекта |
Ключ объекта, идентифицирующий вашу трансляцию в Google Менеджере рекламы. Пример: c-rArva4ShKVIAkNfy6HUQ
|
| Параметры трансляции VOD | |
| Идентификатор источника контента |
Идентификатор источника контента из Google Менеджера рекламы. Пример: 2548831
|
| Идентификатор видео |
Идентификатор видео из Google Менеджера рекламы. Пример: tears-of-steel
|
| Общие параметры (для VOD и трансляций) | |
| Код сети |
Ваш код сети Google Менеджера рекламы. Пример: 21775744923
|
Как создать проект Xcode
В Xcode создайте новый проект iOS на языке Objective-C с названием BasicExample.
Как добавить IMA DAI SDK в проект Xcode
Чтобы установить IMA SDK, выберите подходящий способ.
Рекомендуется установить SDK с помощью Swift Package Manager
Начиная с версии 3.18.4, Interactive Media Ads SDK поддерживает Swift Package Manager. Чтобы импортировать пакет Swift, выполните следующие действия:
В Xcode установите пакет IMA DAI SDK Swift. Для этого выберите File (Файл) > Add Packages (Добавить пакеты).
В появившемся окне найдите хранилище IMA DAI SDK Swift Package на GitHub:
https://github.com/googleads/swift-package-manager-google-interactive-media-ads-iosВыберите версию пакета Swift IMA DAI SDK. Для новых проектов используйте вариант До следующей основной версии.
Когда все будет готово, Xcode начнет распознавать зависимости пакета и скачивать их в фоновом режиме. Подробнее о том, как добавить зависимости пакетов, можно узнать из статьи Apple.
Как вручную скачать и установить SDK
Если вы не хотите использовать Swift Package Manager, скачайте IMA SDK и добавьте его в проект вручную.
Как создать видеопроигрыватель
Реализуйте видеопроигрыватель в основном контроллере представления, поместив AV-проигрыватель в представление пользовательского интерфейса. IMA SDK использует представление пользовательского интерфейса для показа элементов интерфейса объявлений.
Objective-C
Swift
Инициализируйте загрузчик объявлений
Импортируйте IMA SDK в контроллер представления и примените протоколы IMAAdsLoaderDelegate и IMAStreamManagerDelegate для обработки событий загрузчика объявлений и менеджера трансляций.
Добавьте следующие частные свойства для хранения ключевых компонентов IMA SDK:
IMAAdsLoader- Управляет запросами потоков на протяжении всего времени существования приложения.
IMAAdDisplayContainer- Отвечает за вставку и управление элементами пользовательского интерфейса.
IMAAVPlayerVideoDisplay– обеспечивает обмен данными между IMA SDK и медиапроигрывателем, а также обрабатывает метаданные с временными метками.IMAStreamManager– управляет воспроизведением трансляции и активирует события, связанные с рекламой.
Инициализируйте загрузчик объявлений, контейнер для показа объявлений и видео после загрузки представления.
Objective-C
Swift
Как отправить запрос на создание потока
Когда пользователь нажимает кнопку воспроизведения, отправьте новый запрос потока.
Используйте класс IMALiveStreamRequest для трансляций. Для трансляций VOD используйте класс IMAVODStreamRequest.
В запросе трансляции должны быть указаны параметры трансляции, а также ссылка на контейнер объявлений и видеопроигрыватель.
Objective-C
Swift
Как отслеживать события загрузки потока
Класс IMAAdsLoader вызывает методы IMAAdsLoaderDelegate при успешной инициализации или сбое запроса потока.
В методе делегата adsLoadedWithData задайте IMAStreamManagerDelegate.
Инициализируйте менеджер потоков. При инициализации менеджер трансляции начинает воспроизведение.
В методе делегата failedWithErrorData зарегистрируйте ошибку. При необходимости воспроизведите резервный поток. Ознакомьтесь с рекомендациями по динамическому размещению.
Objective-C
Swift
Как отслеживать события объявлений
Функция IMAStreamManager вызывает методы IMAStreamManagerDelegate, чтобы передавать события и ошибки потока в ваше приложение.
В этом примере основные события объявлений будут регистрироваться в консоли:
Objective-C
Swift
Запустите приложение. Если все прошло успешно, запросите и воспроизведите потоки Google DAI с помощью IMA SDK. Чтобы узнать больше о продвинутых функциях SDK, ознакомьтесь с другими руководствами, перечисленными на боковой панели слева, или примерами на GitHub.