Melhorar o tempo de carregamento do IMA

O SDK do IMA carrega dependências para solicitar anúncios, medir a visibilidade e gerar relatórios de impressões de anúncios. Ao inicializar o IMA antes de fazer uma solicitação de anúncio, você maximiza o tempo para carregar as dependências do IMA antes da reprodução do anúncio. Esta página aborda como processar tempos de carregamento do IMA no seu app.

Ligar para ImaSdkFactory.initialize()

O método ImaSdkFactory.initialize() começa a pré-carregar recursos do SDK antes da primeira solicitação de anúncio. Para usar initialize(), você precisa da versão 3.35.1 ou mais recente da IMA.

Chame ImaSdkFactory.initialize() na inicialização do aplicativo ou o mais cedo possível no ciclo de vida do aplicativo, conforme a estrutura do app permitir. A chamada initialize() usa os seguintes parâmetros:

  • context: usa o contexto do aplicativo, que está sempre disponível durante o ciclo de vida do aplicativo.
  • settings: transmita um objeto ImaSdkSettings com os valores definidos. As configurações da IMA usadas na chamada initialize() precisam ser as mesmas usadas na chamada createAdsLoader(). O SDK do IMA usa essas configurações, principalmente a de idioma, para a chave de cache. Não recomendamos o uso de valores de teste ou falsos para as configurações usadas na chamada do método initialize(), porque podem ocorrer falhas de cache e aumentar o tempo de carregamento do anúncio.

Reutilizar a instância AdsLoader

Para melhorar o tempo de carregamento da IMA, recomendamos reutilizar a mesma instância AdsLoader. A interface AdsLoader pode processar várias solicitações de anúncio ou stream. Evite criar uma nova instância de AdsLoader para cada solicitação. A criação de uma nova instância AdsLoader exige um tempo de carregamento e usa recursos extras do dispositivo.

Solicitar anúncios antes da reprodução

Se você tiver acesso à instância AdsLoader antes de iniciar a reprodução de anúncios, também poderá chamar o método AdsLoader.requestAds() antecipadamente. Fazer essa chamada inicia o carregamento de anúncios precedentes. Quando o usuário estiver pronto para iniciar a reprodução de conteúdo, chame o método AdsManager.init() e aguarde o evento LOADED para veicular anúncios.