Mode operasi SDK
SDK dapat beroperasi dalam satu atau beberapa mode, bergantung pada respons iklan yang diterima dari server iklan.
- Iklan tunggal
- Iklan yang dapat diputar kapan saja saat pesan
start
dikirim keIMAAdsManager
. Tidak diperlukan inisialisasi khusus untuk memutar satu iklan. - Pod iklan
- Beberapa iklan yang diputar secara beruntun saat pesan
start
dikirim keIMAAdsManager
. Tidak diperlukan inisialisasi khusus untuk memutar pod iklan tunggal. - Aturan iklan
- Playlist jeda iklan yang dijadwalkan pada waktu tertentu untuk konten
tertentu. Pesan
start
diabaikan dalam mode aturan iklan. Beberapa jeda iklan dapat dijadwalkan dalam satu playlist (misalnya, pre-roll, mid-roll, post-roll). Untuk mengetahui detail penerapan lebih lanjut, lihat bagian Aturan Iklan di bawah.
Aturan iklan
IMA iOS 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 menayangkan 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.
- Saat menginisialisasi
AdsManager
, objekIMAContentPlayhead
diteruskan melalui panggilaninitializeWithContentPlayhead:adsRenderingSettings:
. Jika Anda menggunakan AVPlayer untuk menampilkan konten, Anda meneruskan instanceIMAAVPlayerContentPlayhead
ke SDK saat membuatadDisplayContainer
. Objek ini digunakan untuk melacak progres pemutaran konten sehingga jeda iklan dimasukkan secara otomatis pada waktu yang ditentukan di Ad Manager.
Dengan AVPlayer:
IMAContentPlayhead *contentPlayhead = [[IMAAVPlayerContentPlayhead alloc] initWithAVPlayer:self.contentAVPlayer]; IMAAdsRequest *request = [[IMAAdsRequest alloc] initWithAdTagUrl:adTagUrl adDisplayContainer:adDisplayContainer contentPlayhead:contentPlayhead userContext:nil];
Tanpa AVPlayer:
- Terapkan antarmuka
IMAContentPlayhead
. - Terapkan
currentTime
untuk menampilkan waktu saat ini dari pemutar video Anda. - Ubah panggilan inisialisasi
IMAAdsManager
untuk menggunakaninitializeWithContentPlayhead:self
.
- Terapkan antarmuka
- IMAAdsManagerDelegate digunakan untuk menjeda dan melanjutkan konten saat jeda iklan diputar.
Catatan: Setelah konten selesai diputar atau
pengguna telah menghentikan pemutaran, pastikan untuk memanggil contentComplete
di IMAAdsLoader
untuk memberi sinyal kepada SDK bahwa konten
telah selesai diputar. Kemudian, SDK 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 metode initializeWithContentPlayhead:adsRenderingSettings
IMAAdsManager
dipanggil dan Anda harus selalu memanggil initializeWithContentPlayhead:adsRenderingSettings
sebelum memutar konten.