O SDK do IMA para Android é compatível com playlists de anúncios totalmente automatizadas. Este recurso inserem divisões de anúncio no conteúdo, conforme especificado Google Ad Manager (em inglês) ao programar seus anúncios. Ele também simplifica muito o código do player de vídeo necessário para oferecer suporte a intervalos de anúncios, incluindo precedentes, intermediários e finais.
- Ao programar os anúncios no Ad Manager, é possível especificar várias regras de anúncios. como "sempre reproduzir o intervalo de anúncio no início do conteúdo" ou "toque um de um minuto a cada 30 minutos de conteúdo".
- Quando os anúncios são solicitados, o servidor de anúncios pode retornar uma lista de anúncios. O SDK processa a lista de reprodução e programa automaticamente os intervalos de anúncio que foram especificado.
- Como o Android usa o mesmo player de vídeo para a reprodução de anúncios e conteúdos,
se você planeja implementar regras de anúncios, deve salvar a posição do marcador do seu
conteúdo quando um anúncio é iniciado e, em seguida, procura para essa posição quando o anúncio termina.
Implemente a interface
VideoAdPlayer
no vídeo. de futebol. Isso garante que os intervalos de anúncio sejam inseridos automaticamente na horários especificados no Ad Manager.private boolean playingContent = true; private int contentPosition = -1; private List
callbacks = new ArrayList (); @Override public void addCallback(VideoAdPlayerCallback callback) { callbacks.add(callback); } @Override public void removeCallback(VideoAdPlayerCallback callback) { callbacks.remove(callback); } public void loadContent() { playingContent = true; load(CONTENT_URL); } @Override public void loadAd(String mediaUrl) { playingContent = false; load(mediaUrl); } public void pauseContent() { savePosition(); pause(); } @Override public void pauseAd() { pause(); } private void pause() { myVideoView.pause(); for (VideoAdPlayerCallback callback : callbacks) { callback.onPause(); } } public void resumeContent() { loadContent(); if (contentPosition > 0) { restorePosition(); } resume(); } @Override public void resumeAd() { resume(); } private void resume() { myVideoView.start(); for (VideoAdPlayerCallback callback : callbacks) { callback.onResume(); } } public void savePosition() { contentPosition = myVideoView.getCurrentPosition(); } public void restorePosition() { myVideoView.seekTo(contentPosition); } - O
CONTENT_PAUSE_REQUESTED
eCONTENT_RESUME_REQUESTED
são usados para pausar e retomar o conteúdo quando os intervalos de anúncio são reproduzidos. Indicar a documentação da API relevante para saber detalhes sobre esses eventos.
Observação:quando o conteúdo terminar de ser reproduzido ou
o usuário tiver interrompido a reprodução, chame
AdsLoader.contentComplete
para sinalizar ao SDK que o conteúdo está pronto. O SDK
em seguida, reproduz a divisão de anúncio final,
se houver uma programada. A
O evento ALL_ADS_COMPLETED
é gerado quando TODOS os intervalos de anúncio
foram jogadas. Além disso, o acompanhamento de conteúdo começa quando
init()
é chamado, e você precisa sempre chamar init()
antes de reproduzir o conteúdo.