Gérer les annonces display responsives

Actuellement, la création d'un itérateur d'annonce avec la condition Type = RESPONSIVE_DISPLAY_AD permet d'effectuer des itérations sur les anciennes annonces uniquement. Cette condition est obsolète. Veuillez mettre à jour le code existant pour utiliser Type = LEGACY_RESPONSIVE_DISPLAY_AD de manière explicite. Pour créer un itérateur d'annonces sur des annonces compatibles avec plusieurs assets texte, image et vidéo, utilisez la condition Type = MULTI_ASSET_RESPONSIVE_DISPLAY_AD.

L'extrait de code suivant illustre certaines différences et similitudes entre les deux types d'annonces display responsives sur l'API. Pour en savoir plus, consultez la documentation de référence sur les annonces display responsives.

// let legacyRdaIterator = AdsApp.ads().withCondition("Type = RESPONSIVE_DISPLAY_AD").get();
let legacyRdaIterator = AdsApp.ads().withCondition("Type = LEGACY_RESPONSIVE_DISPLAY_AD").get();
while (legacyRdaIterator.hasNext()) {
  let responsiveDisplayAd = legacyRdaIterator.next().asType().responsiveDisplayAd();

  // Legacy responsive display ads have just one long headline.
  let longHeadline = responsiveDisplayAd.getLongHeadline();

  // And they have one short headline, too.
  let shortHeadline = responsiveDisplayAd.getShortHeadline();

  // This call to .getHeadlines() returns null, because the method is not
  // meaningful when called on a legacy responsive display ad.
  assert(responsiveDisplayAd.getHeadlines() === null);

  // ... etc. ...
}

let rdaIterator = AdsApp.ads().withCondition("Type = MULTI_ASSET_RESPONSIVE_DISPLAY_AD").get();
while (rdaIterator.hasNext()) {
  let responsiveDisplayAd = rdaIterator.next().asType().responsiveDisplayAd();

  // Responsive display ads have just one long headline.
  let longHeadline = responsiveDisplayAd.getLongHeadline();

  // But they can have multiple short headline text assets.
  let shortHeadlineAssets = responsiveDisplayAd.getHeadlines();

  // This call to .getShortHeadline() returns null, because the method is only
  // meaningful when called on a legacy responsive display ad.
  assert(responsiveDisplayAd.getShortHeadline() === null);

  // ... etc. ...
}

let rdaAndLegacyIterator = AdsApp.ads().withCondition("Type IN [LEGACY_RESPONSIVE_DISPLAY_AD, MULTI_ASSET_RESPONSIVE_DISPLAY_AD]").get();
while (rdaAndLegacyIterator.hasNext()) {
  let responsiveDisplayAd = legacyRdaIterator.next().asType().responsiveDisplayAd();
  let longHeadline = responsiveDisplayAd.getLongHeadline();

  // The .isLegacy() method can be used to differentiate between responsive
  // display ad types within an iterator over both.
  if (responsiveDisplayAd.isLegacy()) {
    let shortHeadline = responsiveDisplayAd.getShortHeadline();
    // ... etc. ...
  } else {
    let shortHeadlineAssets = responsiveDisplayAd.getHeadlines();
    // ... etc. ...
  }
}