En esta guía, se explica cómo integrar el SDK de IMA para DAI en una app de reproductor de video. Si quieres ver o seguir una integración de ejemplo completa, descarga el BasicExample de GitHub.
Descripción general de IMA para DAI
La implementación de IMA para DAI involucra cuatro componentes principales del SDK, como se demuestra en esta guía:
IMAAdDisplayContainer: Es un objeto contenedor que se ubica sobre el elemento de reproducción de video y aloja los elementos de la IU del anuncio.IMAAdsLoader: Es un objeto que solicita transmisiones y controla los eventos activados por los objetos de respuesta de solicitud de transmisión. Solo debes crear una instancia de un cargador de anuncios, que se puede reutilizar durante toda la vida útil de la aplicación.IMAStreamRequest: Es unIMAVODStreamRequesto unIMALiveStreamRequest. Es un objeto que define una solicitud de transmisión. Las solicitudes de transmisión pueden ser para videos on demand o transmisiones en vivo. Las solicitudes de transmisión en vivo especifican una clave de recurso, mientras que las solicitudes de VOD especifican un ID de CMS y un ID de video. Ambos tipos de solicitudes pueden incluir, de forma opcional, una clave de API necesaria para acceder a las transmisiones especificadas y un código de red de Google Ad Manager para que el SDK de IMA controle los identificadores de anuncios según se especifica en la configuración de Google Ad Manager.IMAStreamManager: Es un objeto que controla las transmisiones de inserción de anuncios dinámicos y las interacciones con el backend de DAI. El administrador de transmisiones también controla los pings de seguimiento y reenvía los eventos de transmisión y de anuncios al publicador.
Requisitos previos
Antes de comenzar, necesitas lo siguiente:
- Xcode 13 o una versión posterior
- Método para instalar el SDK de IMA:
- Swift Package Manager (preferido)
- Una copia descargada del SDK de IMA para iOS
También necesitas los parámetros para solicitar tu transmisión desde el SDK de IMA. Para ver ejemplos de parámetros de solicitud, consulta Sample Streams.
| Parámetros de transmisión en vivo | |
|---|---|
| Clave del recurso |
Es la clave del recurso
que identifica tu transmisión en vivo en Google Ad Manager. Ejemplo: c-rArva4ShKVIAkNfy6HUQ
|
| Parámetros de transmisión de VOD | |
| ID de la fuente de contenido |
Es el ID de la fuente del contenido de Google Ad Manager. Ejemplo: 2548831
|
| ID de video |
Es el ID de video de Google Ad Manager. Ejemplo: tears-of-steel
|
| Parámetros comunes (VOD y transmisión en vivo) | |
| Código de red |
Es tu código de red de Google Ad Manager. Ejemplo: 21775744923
|
Crea un proyecto de Xcode nuevo
En Xcode, crea un proyecto de iOS nuevo con Objective-C llamado "BasicExample".
Agrega el SDK de IMA para DAI al proyecto de Xcode
Para instalar el SDK de IMA, elige el método que prefieras.
Recomendado: Instala el SDK con Swift Package Manager
El SDK de anuncios multimedia interactivos admite Swift Package Manager a partir de la versión 3.18.4. Sigue estos pasos para importar el paquete de Swift.
En Xcode, instala el paquete de Swift del SDK de IMA para DAI. Para ello, navega a File > Add Packages.
En el mensaje que aparece, busca el repositorio de GitHub del paquete de Swift del SDK de IMA para DAI:
https://github.com/googleads/swift-package-manager-google-interactive-media-ads-iosSelecciona la versión del paquete de Swift del SDK de IMA para DAI que quieras usar. Para los proyectos nuevos, usa la opción Up to Next Major Version.
Cuando termines, Xcode resolverá las dependencias de tu paquete y las descargará en segundo plano. Para obtener más detalles sobre cómo agregar dependencias de paquetes, consulta el artículo de Apple.
Descarga e instala el SDK de forma manual
Si no quieres usar Swift Package Manager, descarga y agrega manualmente el SDK de IMA a tu proyecto.
Crea un reproductor de video
Implementa un reproductor de video en tu controlador de vista principal; une un reproductor de AV en una vista de IU. El SDK de IMA usa la vista de la IU para mostrar los elementos de la IU del anuncio.
Objective-C
Swift
Inicializa el cargador de anuncios
Importa el SDK de IMA en tu controlador de vistas y adopta los protocolos IMAAdsLoaderDelegate y IMAStreamManagerDelegate para controlar los eventos del cargador de anuncios y del administrador de transmisiones.
Agrega estas propiedades privadas para almacenar componentes clave del SDK de IMA:
IMAAdsLoader- Administra las solicitudes de transmisión durante el ciclo de vida de tu app.
IMAAdDisplayContainer- Controla la inserción y la administración de los elementos de la interfaz de usuario de los anuncios.
IMAAVPlayerVideoDisplay: Se comunica entre el SDK de IMA y tu reproductor multimedia, y controla los metadatos cronometrados.IMAStreamManager: Administra la reproducción de la transmisión y activa eventos relacionados con los anuncios.
Inicializa el cargador de anuncios, el contenedor de visualización de anuncios y la visualización de video después de que se cargue la vista.
Objective-C
Swift
Cómo realizar una solicitud de transmisión
Cuando un usuario presione el botón de reproducción, realiza una nueva solicitud de transmisión.
Usa la clase
IMALiveStreamRequest
para las transmisiones en vivo. Para las transmisiones de VOD, usa la clase IMAVODStreamRequest.
La solicitud de transmisión requiere tus parámetros de transmisión, así como una referencia a tu contenedor de visualización de anuncios y a la visualización de video.
Objective-C
Swift
Escucha los eventos de carga de transmisiones
La clase IMAAdsLoader llama a los métodos IMAAdsLoaderDelegate cuando se inicializa correctamente o falla la solicitud de transmisión.
En el método delegado adsLoadedWithData, configura tu IMAStreamManagerDelegate.
Inicializa el administrador de transmisiones. En la inicialización, el administrador de transmisiones inicia la reproducción.
En el método delegado failedWithErrorData, registra el error. De manera opcional, reproduce la transmisión de copia de seguridad. Consulta las prácticas recomendadas para la DAI.
Objective-C
Swift
Escucha los eventos de anuncios
IMAStreamManager llama a los métodos IMAStreamManagerDelegate para pasar eventos y errores de transmisión a tu aplicación.
En este ejemplo, registra los eventos de anuncios principales en la consola:
Objective-C
Swift
Ejecuta tu app. Si se ejecuta correctamente, solicita y reproduce transmisiones de DAI de Google con el SDK de IMA. Para obtener más información sobre las funciones más avanzadas del SDK, consulta otras guías que se indican en la barra lateral izquierda o los ejemplos en GitHub.