Mode operasi SDK
SDK dapat beroperasi dalam satu atau beberapa mode, bergantung pada respons iklan yang diterimanya dari iklan server tertentu.
- Iklan tunggal
- Iklan yang dapat diputar kapan saja ketika
start
pesan dikirim keIMAAdsManager
. Tidak ada inisialisasi khusus untuk memutar satu iklan. - Pod iklan
- Beberapa iklan yang diputar secara beruntun saat pesan
start
dikirim keIMAAdsManager
. Tidak diperlukan inisialisasi khusus untuk memainkan satu pod iklan. - Aturan iklan
- Playlist jeda iklan yang dijadwalkan pada waktu tertentu terhadap
saat ini. Pesan
start
diabaikan dalam mode aturan iklan. Ada dapat ada beberapa jeda iklan yang dijadwalkan dalam satu playlist (misalnya, pre-roll, mid-roll, post-roll). Untuk detail penerapan lebih lanjut, lihat 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 dalam Google Ad Manager saat memproses iklan. Hal ini juga sangat menyederhanakan kode pemutar video 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 yang ditentukan.
- Saat melakukan inisialisasi
AdsManager
,IMAContentPlayhead
objek diteruskan melaluiinitializeWithContentPlayhead:adsRenderingSettings:
panggilan telepon. Jika Anda menggunakan AVPlayer untuk menampilkan konten, Anda meneruskan instanceIMAAVPlayerContentPlayhead
ke SDK saat Anda membuatadDisplayContainer
. Objek ini digunakan untuk melacak kemajuan pemutaran konten sehingga jeda iklan akan otomatis disisipkan pada waktu yang ditentukan dalam 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. - Ubah panggilan inisialisasi
IMAAdsManager
menjadi gunakaninitializeWithContentPlayhead:self
.
- Terapkan antarmuka
- IMAAdsManagerDelegate digunakan untuk menjeda dan melanjutkan konten saat jeda iklan diputar.
Catatan: Saat konten telah selesai diputar atau
pengguna telah menghentikan pemutaran, pastikan untuk memanggil contentComplete
di IMAAdsLoader
untuk memberi tahu SDK bahwa konten
yang telah selesai diputar. Kemudian, SDK akan memutar jeda iklan post-roll, jika sudah dijadwalkan.
Peristiwa ALL_ADS_COMPLETED
dipicu saat semua jeda iklan memiliki
yang pernah dimainkan. Selain itu, perhatikan bahwa pelacakan konten dimulai saat
initializeWithContentPlayhead:adsRenderingSettings
milik IMAAdsManager
metode dipanggil dan Anda harus selalu memanggil initializeWithContentPlayhead:adsRenderingSettings
sebelum memutar konten.