จัดการคําขอโฆษณาหลายรายการ

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

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

IMA SDK สำหรับ HTML5 ช่วยให้ผู้เผยแพร่โฆษณาส่งค่าหรือออบเจ็กต์ใดก็ได้ไปยังช่อง UserContext ของคำขอโฆษณา เพื่อลดความซับซ้อนของกระบวนการแยกความแตกต่างระหว่าง Ad Manager หลายรายการ จากนั้นคุณจะดึงค่าหรือออบเจ็กต์นี้ได้ในแฮนเดิลอร์ AdsManagerLoadedEvent โดยใช้เมธอด getUserRequestContext()

ตัวอย่าง

...
adsLoader.addEventListener(
      google.ima.AdsManagerLoadedEvent.Type.ADS_MANAGER_LOADED,
      onAdsManagerLoaded,
      false);
adsLoader.addEventListener(
      google.ima.AdErrorEvent.Type.AD_ERROR,
      onAdsManagerError,
      false);
const contextA = {id: "Request A", element: videoElementA};
const contextB = {id: "Request B", element: videoElementB}
adsLoader.requestAds(adsRequestA, contextA);
adsLoader.requestAds(adsRequestB, contextB);
...

function onAdsManagerLoaded(adsManagerLoadedEvent) {
  const context = adsManagerLoadedEvent.getUserRequestContext();
  adsManager = adsManagerLoadedEvent.getAdsManager(context.element);
  console.log("Successfully loaded ID: " + context.id);
}

function onAdsManagerError(adsManagerErrorEvent) {
  const context = adsManagerErrorEvent.getUserRequestContext();
  console.log("Error with AdRequest ID: " + context.id);
}
...