Améliorer le temps de chargement de l'IMA

Le SDK IMA charge les dépendances pour demander des annonces, mesurer la visibilité et signaler les impressions d'annonces. En initialisant IMA avant d'envoyer une demande d'annonce, vous maximisez le temps de chargement des dépendances IMA avant la lecture de l'annonce. Cette page explique comment gérer les temps de chargement IMA dans votre application.

Appeler ImaSdkFactory.initialize()

La méthode ImaSdkFactory.initialize() commence à précharger les ressources du SDK avant la première demande d'annonce. Pour utiliser initialize(), vous devez disposer d'IMA version 3.35.1 ou ultérieure.

Appelez ImaSdkFactory.initialize() au démarrage de l'application ou le plus tôt possible dans le cycle de vie de l'application, en fonction de la structure de votre application. L'appel initialize() utilise les paramètres suivants :

  • context : utilise le contexte de l'application, qui est toujours disponible pendant le cycle de vie de l'application.
  • settings : transmettez l'objet ImaSdkSettings avec ses valeurs définies. Les paramètres IMA utilisés dans l'appel initialize() doivent être identiques aux valeurs de paramètres utilisées dans l'appel createAdsLoader(). Le SDK IMA utilise ces paramètres, en particulier le paramètre de langue, pour la clé de cache. Nous vous déconseillons d'utiliser des valeurs de test ou fictives pour les paramètres utilisés dans l'appel de méthode initialize(), car des échecs de cache peuvent se produire et augmenter le temps de chargement des annonces.

Réutiliser l'instance AdsLoader

Pour améliorer le temps de chargement d'IMA, nous vous recommandons de réutiliser la même instance AdsLoader. L'interface AdsLoader peut gérer plusieurs demandes d'annonces ou de flux. Évitez de créer une instance AdsLoader pour chaque requête. La création d'une instance AdsLoader nécessite un temps de chargement et utilise des ressources d'appareil supplémentaires.

Demander des annonces avant la lecture

Si vous avez accès à l'instance AdsLoader avant de commencer la lecture des annonces, vous pouvez également appeler la méthode AdsLoader.requestAds() plus tôt. Cet appel lance le chargement des annonces pré-roll. Lorsque l'utilisateur est prêt à lancer la lecture du contenu, appelez la méthode AdsManager.init() et attendez l'événement LOADED pour lire les annonces.