IMA Android SDK mendukung playlist iklan yang sepenuhnya otomatis. Fitur ini menyisipkan jeda iklan ke dalam konten seperti yang ditentukan di Google Ad Manager saat menayangkan iklan Anda. Selain itu, IMA SDK juga sangat menyederhanakan kode pemutar video yang diperlukan untuk mendukung jeda iklan, termasuk pre-roll, mid-roll, dan post-roll.
- Saat memproses iklan di Ad Manager, Anda dapat menentukan berbagai aturan iklan, seperti "selalu putar jeda iklan di awal konten" atau "putar jeda iklan satu menit setiap 30 menit konten".
- Saat iklan diminta, server iklan dapat menampilkan playlist iklan. SDK memproses playlist dan secara otomatis menjadwalkan jeda iklan yang telah ditentukan.
- Karena Android menggunakan pemutar video yang sama untuk pemutaran iklan dan konten,
jika Anda berencana menerapkan aturan iklan, Anda harus menyimpan posisi penunjuk putar
konten saat iklan dimulai, lalu mencari posisi tersebut saat iklan selesai.
Pastikan untuk menerapkan antarmuka
VideoAdPlayer
di pemutar video Anda. Hal ini memastikan bahwa jeda iklan disisipkan secara otomatis pada waktu yang ditentukan di 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); } - Peristiwa
CONTENT_PAUSE_REQUESTED
danCONTENT_RESUME_REQUESTED
digunakan untuk menjeda dan melanjutkan konten saat jeda iklan diputar. Lihat dokumentasi API yang relevan untuk mengetahui detail tentang peristiwa ini.
Catatan: Setelah konten selesai diputar atau
pengguna menghentikan pemutaran, pastikan untuk memanggil
AdsLoader.contentComplete
untuk memberi sinyal kepada SDK bahwa konten telah selesai. SDK
kemudian memutar jeda iklan post-roll, jika telah dijadwalkan. Peristiwa
ALL_ADS_COMPLETED
dipicu saat SEMUA jeda iklan
telah diputar. Selain itu, perhatikan bahwa pelacakan konten dimulai saat
init()
dipanggil dan Anda harus selalu memanggil init()
sebelum memutar konten.