ทำงานอัตโนมัติกับเพลย์ลิสต์โฆษณา

เลือกแพลตฟอร์ม HTML5 Android iOS tvOS

IMA Android SDK รองรับเพลย์ลิสต์โฆษณาที่สร้างขึ้นโดยอัตโนมัติทั้งหมด ฟีเจอร์นี้จะ แทรกช่วงพักโฆษณาลงในเนื้อหาตามที่ระบุไว้ใน Google Ad Manager เมื่อดูแลการแสดงโฆษณา นอกจากนี้ยังช่วยลดความซับซ้อนของโค้ดวิดีโอเพลเยอร์ ที่จำเป็นต่อการรองรับช่วงพักโฆษณา ซึ่งรวมถึงโฆษณาตอนต้น ตอนกลาง และตอนท้าย

  • เมื่อทราฟิกโฆษณาใน Ad Manager คุณจะระบุกฎโฆษณาต่างๆ ได้ เช่น "เล่นช่วงพักโฆษณาที่จุดเริ่มต้นของเนื้อหาเสมอ" หรือ "เล่นช่วงพักโฆษณานาน 1 นาทีทุกๆ 30 นาทีของเนื้อหา"
  • เมื่อมีการขอโฆษณา เซิร์ฟเวอร์โฆษณาสามารถแสดงเพลย์ลิสต์โฆษณาได้ SDK จะประมวลผลเพลย์ลิสต์และกำหนดเวลาช่วงพักโฆษณาที่ระบุโดยอัตโนมัติ
  • เนื่องจาก Android ใช้โปรแกรมเล่นวิดีโอเดียวกันสำหรับการเล่นโฆษณาและเนื้อหา หากคุณวางแผนที่จะใช้กฎโฆษณา คุณต้องบันทึกตำแหน่งหัวอ่านของเนื้อหา เมื่อโฆษณาเริ่มเล่น จากนั้นให้ข้ามไปยังตำแหน่งนั้นเมื่อโฆษณาเล่นจบ อย่าลืมใช้VideoAdPlayerอินเทอร์เฟซในวิดีโอ เพลเยอร์ ซึ่งจะช่วยให้ระบบแทรกช่วงพักโฆษณาโดยอัตโนมัติในเวลาที่ระบุไว้ใน 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);
    }
  • เหตุการณ์ CONTENT_PAUSE_REQUESTED และ CONTENT_RESUME_REQUESTED ใช้เพื่อหยุดชั่วคราวและเล่นเนื้อหาต่อเมื่อมีการเล่นช่วงพักโฆษณา ดูรายละเอียดเกี่ยวกับเหตุการณ์เหล่านี้ได้ในเอกสารประกอบเกี่ยวกับ API ที่เกี่ยวข้อง

หมายเหตุ: เมื่อเนื้อหาเล่นจบหรือ ผู้ใช้หยุดเล่น ให้เรียกใช้ AdsLoader.contentComplete เพื่อให้ SDK ทราบว่าเนื้อหาเล่นจบแล้ว จากนั้น SDK จะเล่นช่วงพักโฆษณาตอนท้ายหากมีการกำหนดเวลาไว้ ระบบจะเรียกใช้เหตุการณ์ ALL_ADS_COMPLETED เมื่อเล่นช่วงพักโฆษณาทั้งหมด แล้ว นอกจากนี้ โปรดทราบว่าการติดตามเนื้อหาจะเริ่มขึ้นเมื่อมีการเรียกใช้ init() และคุณควรเรียกใช้ init() ก่อนเล่นเนื้อหาเสมอ