Menangani beberapa permintaan iklan

(IMA) SDK untuk HTML5.

Sebagian besar penggunaan IMA SDK hanya memerlukan pengelolaan satu permintaan iklan dalam satu waktu. Namun, beberapa penerapan kasus ekstrem, seperti memuat data iklan terlebih dahulu sebelum pengguna memilih video, mungkin memerlukan pembuatan beberapa permintaan serentak. Karena permintaan iklan dibuat secara asinkron, memastikan pengelola iklan yang tepat dikaitkan dengan konteks yang benar dapat tampak sebagai tugas yang sulit.

Untuk menyederhanakan proses membedakan beberapa pengelola iklan, IMA SDK untuk HTML5 memungkinkan penayang meneruskan nilai atau objek apa pun ke kolom UserContext dari permintaan iklan apa pun. Nilai atau objek ini kemudian dapat diambil di handler AdsManagerLoadedEvent, dengan menggunakan metode getUserRequestContext().

Contoh

...
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);
}
...