Todas las aplicaciones que muestren anuncios alojados por Google deben implementar el ícono y la capa superpuesta de AdChoices cuando Google los proporcione. AdChoices (también conocido como "¿Por qué este anuncio?") es una función de transparencia que explica a los usuarios por qué se les muestra un anuncio en particular y proporciona información sobre cómo se protege su privacidad. Para obtener más información, consulta AdChoices para Google Ad Manager.
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 desde la respuesta XML de VAST de tu anuncio o 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 los íconos de AdChoices, tu app o sitio web deben cumplir con los siguientes estándares:
- El ícono de AdChoices debe mostrarse superpuesto en cualquier anuncio para el que se proporcione.
- El ícono de AdChoices debe mostrarse 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).
- El ícono de AdChoices no debe quedar oculto detrás de otras superposiciones de anuncios ni elementos de la interfaz.
- En las plataformas que admiten clics o equivalentes (p.ej., selección táctil o remota), se debe poder hacer clic en el ícono de AdChoices.
- En las plataformas que admiten navegadores, al hacer clic en el ícono de AdChoices, se debe abrir una pestaña o ventana del navegador con la URL especificada en la propiedad "ClickThrough" o "click_data".
- En las plataformas que no admiten navegadores, al hacer clic en el ícono de AdChoices, se debe abrir una superposición modal que muestre una de las imágenes especificadas en la propiedad "IconClickFallbackImage" o "click_fallback_images".
- En las plataformas que no admiten navegadores, 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 trabajas con una respuesta de solicitud de anuncio en XML, AdChoices solo se admite en 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 solicitud de anuncio en XML sigue el estándar de VAST 4.2, AdChoices se entrega como un ícono de VAST. Si tu app o sitio web admiten por completo los íconos de VAST 4.2 (sección 3.11 del estándar de VAST 4.2), la compatibilidad con AdChoices no requiere más trabajo.
Si tu app no admite los í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 esta muestra de XML de VAST 4.2 para realizar pruebas adicionales en tu app.
Ejemplo de respuesta de VAST 4.2
<?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 solicitud de anuncio en XML sigue el estándar de VAST 3.0, AdChoices se entrega como una combinación de un ícono de VAST y una extensión de VAST personalizada. Si tu sitio web o aplicación admiten por completo el estándar de íconos de VAST 3.0 y si la plataforma puede navegar a la URL de clic en el ícono y mostrarla, la compatibilidad con AdChoices no requiere más trabajo.
Si tu plataforma no puede navegar a las URLs de clic y 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 VAST.
Para admitir completamente AdChoices, la etiqueta IconFallbackImages con el nombre del programa "GoogleWhyThisAd" debe asociarse con el ícono que tiene 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 compatibilidad con imágenes de resguardo para todos los íconos de VAST cuando estén disponibles. Puedes usar esta muestra de XML de VAST 3.0 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 de VAST 3.0 asociado. |
La estructura de este nodo coincide con el estándar de 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 | Es una descripción accesible de la imagen. | |
| ---StaticResource | creativeType | Es el tipo de MIME de la imagen de respaldo. |
| 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 de los metadatos JSON de la API de DAI
Cuando trabajas con la API de DAI, los detalles de AdChoices se pasan a través del objeto JSON que devuelven las solicitudes a la URL de metadatos.
El objeto JSON de metadatos contiene una lista de anuncios, con la clave adID. 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 | Posición horizontal de la esquina superior izquierda del ícono, en píxeles, en relación con la esquina superior izquierda de la creatividad de video. Este campo también acepta los valores de posición responsivos "right" o "left". |
| y_position | Posición vertical de la esquina superior izquierda del ícono, en píxeles, en relación con la esquina superior izquierda de la creatividad de video. Este campo también acepta los valores de posición responsiva "top" o "bottom". |
| ancho | Es el ancho del ícono, en píxeles. |
| alto | Altura del ícono, en píxeles. |
| creative_type | Es el tipo de MIME de la imagen proporcionada para el ícono. La configuración predeterminada es “image/png”. |
| recurso | Es la URL para recuperar el ícono de AdChoices. |
| alt_text | Es el texto alternativo que se renderizará para el ícono de AdChoices. |
| click_data | Objeto que contiene la propiedad click_data.url, que representa la URL a la que se dirige a los usuarios si hacen clic en el ícono de AdChoices en una plataforma que admite la navegación web.
|
| click_fallback_images | Es un array de objetos de imagen que se mostrarán a los usuarios que hagan clic en el ícono de AdChoices en las 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 | Altura de la imagen de resguardo, en píxeles. |
| creative_type | Es el tipo de MIME de la imagen de respaldo. La configuración predeterminada es “image/png”. |
| recurso | Es la URL para recuperar la imagen alternativa. |
| alt_text | Es el texto alternativo que se renderizará para la imagen de resguardo. |
Ejemplo de JSON de metadatos
{
...
"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"
}
...
]
...
},
...
}
...
}