Migliorare il tempo di caricamento di IMA

L'SDK IMA carica le dipendenze per richiedere gli annunci, misurare la visibilità e registrare le impressioni degli annunci. Se inizializzi IMA prima di effettuare una richiesta di annuncio, massimizzi il tempo di caricamento delle dipendenze di IMA prima della riproduzione dell'annuncio. Questa pagina spiega come gestire i tempi di caricamento di IMA nella tua app.

Chiama ImaSdkFactory.initialize()

Il metodo ImaSdkFactory.initialize() inizia a precaricare le risorse dell'SDK prima della prima richiesta di annuncio. Per utilizzare initialize(), devi disporre della versione 3.35.1 o successive di IMA.

Chiama ImaSdkFactory.initialize() all'avvio dell'applicazione o il prima possibile nel ciclo di vita dell'applicazione, in base alla struttura dell'app. La chiamata initialize() accetta i seguenti parametri:

  • context: utilizza il contesto dell'applicazione, che è sempre disponibile durante il ciclo di vita dell'applicazione.
  • settings: passa un oggetto ImaSdkSettings con i valori impostati. Le impostazioni IMA utilizzate nella chiamata initialize() devono essere uguali ai valori delle impostazioni utilizzate nella chiamata createAdsLoader(). L'SDK IMA utilizza queste impostazioni, in particolare quella della lingua, per la chiave della cache. Non è consigliabile utilizzare valori di test o falsi per le impostazioni utilizzate nella chiamata al metodo initialize(), in quanto potrebbero verificarsi errori di cache e aumentare il tempo di caricamento degli annunci.

Riutilizza l'istanza AdsLoader

Per migliorare il tempo di caricamento di IMA, ti consigliamo di riutilizzare la stessa istanza di AdsLoader. L'interfaccia AdsLoader può gestire più richieste di annunci o stream. Evita di creare una nuova istanza di AdsLoader per ogni richiesta. La creazione di una nuova istanza di AdsLoader richiede un tempo di caricamento e utilizza risorse del dispositivo aggiuntive.

Richiedere annunci in anticipo rispetto alla riproduzione

Se hai accesso all'istanza AdsLoader prima di iniziare la riproduzione degli annunci, puoi anche chiamare il metodo AdsLoader.requestAds() in anticipo. L'esecuzione di questa chiamata avvia il caricamento degli annunci pre-roll. Quando l'utente è pronto per iniziare la riproduzione dei contenuti, chiama il metodo AdsManager.init() e attendi l'evento LOADED per riprodurre gli annunci.