Ícono y superposición de AdChoices

Todas las aplicaciones que muestran anuncios personalizados alojados por Google deben implementar el ícono y la superposición de AdChoices, cuando Google los proporciona. AdChoices (también conocida como "¿Por qué este anuncio?") es una función de transparencia que explica a los usuarios los motivos por los que se les muestra un anuncio en particular y proporciona información acerca de cómo se protege su privacidad.

Para obtener más información, consulta Por qué ves un anuncio.

En esta guía, se explica cómo extraer la información necesaria para implementar correctamente AdChoices a partir de la respuesta XML de VAST de tu anuncio o de la respuesta de metadatos de tu transmisión de DAI.

Requisitos para la renderización de AdChoices

Para cumplir con los requisitos de Google para renderizar íconos de AdChoices, tu app o sitio web debe cumplir con los siguientes estándares:

  1. El ícono de AdChoices debe mostrarse superpuesto en cualquier anuncio para el que se proporcione.
  2. El ícono de AdChoices se debe mostrar en la posición indicada por las propiedades "Ubicación X" y "Ubicación Y" incluidas en los datos del ícono, y en el tamaño definido por las propiedades de ancho y alto, en píxeles independientes de la densidad (DP).
  3. El ícono de AdChoices no debe estar oculto por otras superposiciones de anuncios ni elementos de la interfaz.
  4. En las plataformas con compatibilidad con clics o equivalentes (p.ej., selección táctil o remota), se debe poder hacer clic en el ícono de AdChoices.
  5. En las plataformas con compatibilidad con navegadores, hacer clic en el ícono de AdChoices debe abrir una pestaña o ventana del navegador con la URL especificada en la propiedad "ClickThrough" o "click_data".
  6. En las plataformas sin compatibilidad con el navegador, los clics en el ícono de AdChoices deben abrir una superposición modal que muestre una de las imágenes especificadas en la propiedad "IconClickFallbackImage" o "click_fallback_images".
  7. En las plataformas sin compatibilidad con el navegador, la imagen de resguardo debe mostrarse en el tamaño especificado en la propiedad "IconClickFallbackImage" o "click_fallback_images", en píxeles independientes de la densidad (DP).

Cómo analizar AdChoices a partir de una respuesta XML de VAST

Cuando se trabaja con una respuesta de anuncio XML, AdChoices solo es compatible con la versión 3.0 de VAST y versiones posteriores. AdChoices se implementa como un ícono de VAST.

VAST 4.2

Si tu respuesta de anuncio XML sigue el estándar VAST 4.2, AdChoices se entrega como un ícono de VAST. Si tu app o sitio web admite por completo los íconos de VAST 4.2 (sección 3.11 del estándar VAST 4.2), la compatibilidad con AdChoices no requiere más trabajo.

Si tu app no admite íconos de VAST 4.2, debes analizar manualmente los íconos con el nombre del programa "GoogleWhyThisAd" de tu respuesta de VAST, según ese estándar. Puedes usar este xml de VAST 4.2 de muestra para realizar pruebas adicionales en tu app.

Respuesta de VAST 4.2 de muestra

<?xml version="1.0" encoding="UTF-8"?>
<VAST version="4.2">
  <Ad id="20011">
    <Wrapper>
      ...
      <Creatives>
        ...
        <Creative id="5480" sequence="1">
          ...
          <Linear>
            ...
            <Icons>
              ...
              <Icon program="GoogleWhyThisAd" width="40" height="30" xPosition="left" yPosition="100" duration="00:00:10" offset="00:00:00" apiFramework="VAST" altText="AdChoices icon">
                <StaticResource creativeType="image/png">
                  <![CDATA[ https://storage.googleapis.com/interactive-media-ads/hosted-samples/wta/icon_adchoices.png ]]>
                </StaticResource>
                <IconClicks>
                  <IconClickThrough>
                    <![CDATA[ https://g.co/adsettings ]]>
                  </IconClickThrough>
                  <IconClickFallbackImages>
                    <IconClickFallbackImage width="950" height="600">
                      <AltText>
                        <![CDATA[ This ad was shown to you based on: * Google's estimation of your interests, based on your activity on Google on this device (for example, your searches) * the information on the website you were viewing. ]]>
                      </AltText>
                      <StaticResource creativeType="image/png">
                        <![CDATA[ https://storage.googleapis.com/interactive-media-ads/hosted-samples/wta/icon_adchoices_fallback_image.png ]]>
                      </StaticResource>
                    </IconClickFallbackImage>
                    ...
                  </IconClickFallbackImages>
                </IconClicks>
              </Icon>
              ...
            </Icons>
            ...
          </Linear>
          ...
        </Creative>
        ...
      </Creatives>
      ...
    </Wrapper>
    ...
  </Ad>
</VAST>

VAST 3.0

Si tu respuesta de anuncios XML sigue el estándar VAST 3.0, AdChoices se publica como una combinación de un ícono de VAST y una extensión de VAST personalizada. Si tu app o sitio web es totalmente compatible con el estándar de íconos VAST 3.0 y si la plataforma es capaz de navegar a la URL de clic del ícono y mostrarla, la compatibilidad con AdChoices no requiere más trabajo.

Si tu plataforma no puede navegar a las URLs de clic ni mostrarlas (esto se aplica principalmente a los dispositivos que no tienen un navegador web integrado), debes implementar la compatibilidad con la extensión "IconFallbackImages". Esta extensión contiene un conjunto de etiquetas "IconFallbackImages" en las que el atributo "program" coincide con un ícono que se incluyó en el VAST.

Para admitir AdChoices por completo, la etiqueta IconFallbackImages con el nombre del programa "GoogleWhyThisAd" debe estar asociada con el ícono con el nombre del programa "GoogleWhyThisAd", de modo que, cuando el usuario interactúe con el ícono, se muestre la imagen de resguardo asociada.

Para admitir posibles cambios futuros en el estándar de AdChoices, te recomendamos que incorpores la compatibilidad con imágenes de resguardo para todos los íconos VAST, cuando esté disponible. Puedes usar este xml de VAST 3.0 de muestra para realizar pruebas adicionales en tu app.

Estructura de la extensión IconFallbackImages

Etiqueta Atributos Descripción
Extensión tipo Para esta extensión, el tipo siempre contiene el valor IconClickFallbackImages.
-IconClickFallbackImages programa Este atributo siempre coincide con el atributo de programa de un ícono VAST 3.0 asociado.
La estructura de este nodo coincide con el estándar VAST 4.2 para IconClickFallbackImages, excepto por la adición del atributo program.
--IconClickFallbackImage ancho Es el ancho preferido para mostrar la imagen.
alto Es la altura preferida para mostrar la imagen.
---AltText Una descripción accesible de la imagen.
---StaticResource creativeType El tipo MIME de la imagen de resguardo.
Es un valor CDATA que contiene la URL de la imagen de resguardo.

Ejemplo de respuesta de VAST 3.0

<?xml version="1.0" encoding="UTF-8"?>
<VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
 <Ad id="123456">
  <InLine>
   ...
   <Creatives>
    ...
    <Creative id="7891011" AdID="ABCD123456EF" sequence="1">
     ...
     <Linear>
      ...
      <Icons>
       ...
       <Icon program="GoogleWhyThisAd" width="50" height="50" xPosition="20" yPosition="bottom" duration="00:00:10" offset="00:00:00" apiFramework="VAST" altText="Why This Ad?">
        <StaticResource creativeType="image/png">
         <![CDATA[https://storage.googleapis.com/interactive-media-ads/hosted-samples/wta/icon_adchoices.png]]>
        </StaticResource>
        <IconClicks>
         ...
         <IconClickThrough><![CDATA[https://g.co/adsettings]]></IconClickThrough>
        </IconClicks>
       </Icon>
       ...
      </Icons>
     ...
     </Linear>
     ...
    </Creative>
    ...
   </Creatives>
   <Extensions>
    ...
    <Extension type="IconClickFallbackImages">
     ...
     <IconClickFallbackImages program="GoogleWhyThisAd">
      <IconClickFallbackImage width="400" height="150">
       <AltText>Alt icon fallback</AltText>
       <StaticResource creativeType="image/png"><![CDATA[https://storage.googleapis.com/gvabox/nickchavez/media/png/wta_dialog.png]]></StaticResource>
      </IconClickFallbackImage>
      ...
     </IconClickFallbackImages>
     ...
    </Extension>
    ...
   </Extensions>
   ...
  </InLine>
  ...
 </Ad>
</VAST>

Analiza AdChoices a partir del JSON de metadatos de la API de DAI

Cuando se trabaja con la API de DAI, los detalles de AdChoices se pasan a través del objeto JSON que muestran las solicitudes a la URL de metadatos.

El objeto JSON de metadatos contiene una lista de anuncios, ordenados por el ID del anuncio. Dentro de cada objeto de anuncio, hay un array de íconos. Si el anuncio en cuestión utiliza AdChoices, el ícono de AdChoices se incluye en ese array.

Formato de ícono JSON

El formato de ícono JSON es una traducción 1:1 del estándar de íconos de VAST 4.2 (sección 3.11), siempre que sea posible. Sin embargo, para admitir el formato JSON más estricto, algunos atributos cambiaron de nombre cuando fue necesario.

Formato JSON del ícono

programa En el caso del ícono de AdChoices, este valor siempre contiene la cadena "GoogleWhyThisAd".
x_position Es la posición horizontal de la esquina superior izquierda del ícono, en relación con la esquina superior izquierda de la creatividad de video, en píxeles. Este campo también acepta los valores de posición responsiva "derecha" o "izquierda".
y_position Es la posición vertical de la esquina superior izquierda del ícono, en relación con la esquina superior izquierda de la creatividad de video, en píxeles. Este campo también acepta los valores de posición responsiva "top" o "bottom".
ancho Es el ancho del ícono, en píxeles.
alto Es la altura del ícono, en píxeles.
creative_type Es el tipo de MIME de la imagen proporcionada para el ícono. El valor predeterminado es “image/png”.
recurso La URL para recuperar el ícono de AdChoices.
alt_text Es el texto alternativo que se renderizará para el ícono de AdChoices.
click_data Un objeto que contiene la propiedad click_data.url, que representa la URL a la que se dirigirá a los usuarios si hacen clic en el ícono de AdChoices en una plataforma que admita la navegación web.
click_fallback_images Es un array de objetos de imagen para mostrar a los usuarios que hacen clic en el ícono de AdChoices en plataformas que no admiten la navegación web.

Formato JSON de la imagen de resguardo

ancho Es el ancho de la imagen de resguardo, en píxeles.
alto Es la altura de la imagen de resguardo, en píxeles.
creative_type El tipo MIME de la imagen de resguardo. El valor predeterminado es “image/png”.
recurso Es la URL para recuperar la imagen de resguardo.
alt_text Es el texto alternativo que se renderizará para la imagen de resguardo.

JSON de metadatos de muestra

{
  ...
  "ads": {
    ...
    "0002640412_ad1": {
      ...
      "icons": [
        ...
        {
          "alt_text": "AdChoices icon",
          "click_data": {
            "url": "https://g.co/adsettings"
          },
          "click_fallback_images": [
            {
              "alt_text": "This ad was shown to you based on: * Google's estimation of your interests, based on your activity on Google on this device (for example, your searches) * the information on the website you were viewing.",
              "creative_type": "image/jpg",
              "height": 600,
              "resource": "https://storage.googleapis.com/interactive-media-ads/hosted-samples/wta/icon_adchoices_fallback_image.png",
              "width": 950
            }
          ],
          "creative_type": "image/png",
          "height": 30,
          "program": "AdChoices",
          "resource": "https://storage.googleapis.com/interactive-media-ads/hosted-samples/wta/icon_adchoices.png",
          "type": "static",
          "width": 40,
          "x_position": "0",
          "y_position": "100"
        }
        ...
      ]
      ...
    },
    ...
  }
  ...
}