El SDK de IMA carga dependencias para solicitar anuncios, medir la visibilidad y registrar las impresiones de anuncios. Si inicializas IMA antes de realizar una solicitud de anuncio, maximizas el tiempo de carga de las dependencias de IMA antes de la reproducción del anuncio. En esta página, se explica cómo controlar los tiempos de carga de IMA en tu app.
Llamar a ImaSdkFactory.initialize()
El método ImaSdkFactory.initialize()
comienza a precargar los recursos del SDK antes de la primera solicitud de anuncios. Para usar initialize()
, necesitas la versión 3.35.1 o posterior del IMA.
Llama a ImaSdkFactory.initialize()
al inicio de la aplicación o lo antes posible en el ciclo de vida de la aplicación, según lo permita la estructura de tu app. La llamada a initialize()
incluye los siguientes parámetros:
context
: Usa el contexto de la aplicación, que siempre está disponible durante el ciclo de vida de la aplicación.settings
: Pasa un objetoImaSdkSettings
con sus valores establecidos. La configuración de IMA que se usa en la llamada ainitialize()
debe ser la misma que los valores de configuración que se usan en la llamada acreateAdsLoader()
. El SDK de IMA utiliza estos parámetros de configuración, en particular el de idioma, para la clave de caché. No recomendamos usar valores de prueba o falsos para la configuración que se usa en la llamada al métodoinitialize()
, ya que podrían producirse errores de caché y aumentar el tiempo de carga de los anuncios.
Cómo reutilizar la instancia de AdsLoader
Para mejorar el tiempo de carga de IMA, te recomendamos que reutilices la misma instancia de AdsLoader
. La interfaz AdsLoader
puede controlar varias solicitudes de anuncios o transmisiones.
Evita crear una instancia de AdsLoader
nueva para cada solicitud. Crear una instancia de AdsLoader
nueva requiere un tiempo de carga y usa recursos adicionales del dispositivo.
Solicita anuncios antes de la reproducción
Si tienes acceso a la instancia de AdsLoader
antes de iniciar la reproducción de anuncios, también puedes llamar al método AdsLoader.requestAds()
con anticipación. Realizar esta llamada inicia la carga de anuncios previos al video. Cuando el usuario esté listo para iniciar la reproducción de contenido, llama al método AdsManager.init()
y espera el evento LOADED
para reproducir anuncios.