O SDK do IMA carrega dependências para solicitar streams de Inserção de anúncios dinâmicos (DAI), medir a visibilidade e gerar relatórios de impressões de anúncios. Ao inicializar o IMA antes de fazer uma solicitação de transmissão, você maximiza o tempo para carregar as dependências do IMA antes da reprodução do stream. Esta página aborda como gerenciar os tempos de carregamento do IMA no app.
Ligar para ImaSdkFactory.initialize()
O método
ImaSdkFactory.initialize()
começa a carregar previamente os recursos do SDK antes da primeira solicitação de stream.
Para usar initialize(), você precisa da IMA versão 3.35.1 ou mais recente.
Chame ImaSdkFactory.initialize() na inicialização do app ou o mais cedo possível no
ciclo de vida do app, conforme permitido pela estrutura do app. 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 objetoImaSdkSettingscom os valores definidos. As configurações do IMA usadas na chamadainitialize()precisam ser iguais aos valores de configuração usados na chamadacreateAdsLoader(). O SDK do IMA usa essas configurações, principalmente a configuração 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étodoinitialize(), 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 do IMA, recomendamos reutilizar a mesma
instância do
AdsLoader. A interface AdsLoader pode processar várias solicitações de anúncios ou de streaming.
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 mais recursos do dispositivo.
Solicitar transmissões antes da reprodução
Se você tiver acesso à instância AdsLoader antes de iniciar a reprodução
do stream, também poderá chamar o método
AdsLoader.requestStream()
antes do tempo. Fazer essa chamada inicia o carregamento da transmissão de DAI. Quando o usuário
estiver pronto para iniciar a reprodução do stream, chame o método
StreamManager.init()
para inicializar a reprodução do stream.