การใช้งาน IMA SDK ส่วนใหญ่ต้องจัดการคําขอโฆษณารายการเดียวในแต่ละครั้ง อย่างไรก็ตาม การใช้งานบางกรณีที่เกิดขึ้นไม่บ่อย เช่น การโหลดข้อมูลโฆษณาล่วงหน้าก่อนที่ผู้ใช้จะเลือกวิดีโอ อาจต้องมีการส่งคำขอหลายรายการพร้อมกัน เนื่องจากคำขอโฆษณาจะเกิดขึ้นไม่พร้อมกัน ดังนั้นการตรวจสอบให้แน่ใจว่า Ad Manager ที่เหมาะสมเชื่อมโยงกับบริบทที่ถูกต้องอาจดูเป็นงานที่ทำได้ยาก
IMA SDK สําหรับ HTML5 ช่วยให้ผู้เผยแพร่โฆษณาส่งค่าหรือออบเจ็กต์ไปยังช่อง UserContext ของคําขอโฆษณาได้ เพื่อลดความซับซ้อนของกระบวนการแยกความแตกต่างระหว่างระบบจัดการโฆษณาหลายระบบ จากนั้นเรียกข้อมูลค่าหรือออบเจ็กต์นี้ในตัวแฮนเดิล 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);
}
...