Mengotomatiskan playlist iklan

Pilih platform: HTML5 Android iOS tvOS

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 dan CONTENT_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.