Según la Política de Consentimiento de Usuarios de la UE de Google, debes divulgar determinada información a los usuarios del Espacio Económico Europeo (EEE), el Reino Unido y Suiza, y obtener su consentimiento para usar cookies y otro tipo de almacenamiento local cuando esto sea un requisito legal, así como para utilizar datos personales (como el AdID) para publicar anuncios.
Esta política refleja los requisitos de la Directiva de Privacidad Electrónica y el Reglamento General de Protección de Datos (RGPD) de la UE.
En esta guía, se describen los pasos necesarios para admitir el mensaje del MTC de la IAB del RGPD (v2) como parte del SDK de UMP. Está pensado para complementarse con la guía para comenzar, que proporciona una descripción general de cómo poner en funcionamiento tu app con el SDK de UMP y los conceptos básicos para configurar tu mensaje. La siguiente guía es específica para el mensaje del MTC del IAB del RGPD v2. Para obtener más información, consulta Cómo afectan los requisitos de IAB a los mensajes de consentimiento para usuarios de la UE.
Requisitos previos
Revocación del consentimiento
El RGPD exige la revocación del consentimiento para permitir que los usuarios retiren sus selecciones de consentimiento en cualquier momento. Consulta Opciones de privacidad para implementar una manera en que los usuarios puedan retirar sus selecciones de consentimiento.
Etiqueta que indica que el usuario no alcanzó la edad de consentimiento
Para indicar si un usuario no alcanza la edad de consentimiento, establece
setTagForUnderAgeOfConsent (TFUA). Cuando estableces el parámetro TFUA en true, el SDK de UMP no solicita el consentimiento del usuario. Si tu app tiene un público mixto, establece este parámetro para los usuarios infantiles para asegurarte de que no se solicite el consentimiento.
En el siguiente ejemplo, se establece el parámetro TFUA como verdadero en una solicitud de consentimiento de UMP:
Java
ConsentRequestParameters params = new ConsentRequestParameters
.Builder()
// Indicate the user is under age of consent.
.setTagForUnderAgeOfConsent(true)
.build();
consentInformation = UserMessagingPlatform.getConsentInformation(this);
consentInformation.requestConsentInfoUpdate(
this,
params,
(OnConsentInfoUpdateSuccessListener) () -> {
// ...
},
(OnConsentInfoUpdateFailureListener) requestConsentError -> {
// ...
});
Kotlin
val params = ConsentRequestParameters
.Builder()
// Indicate the user is under age of consent.
.setTagForUnderAgeOfConsent(true)
.build()
consentInformation = UserMessagingPlatform.getConsentInformation(this)
consentInformation.requestConsentInfoUpdate(
this,
params,
ConsentInformation.OnConsentInfoUpdateSuccessListener {
// ...
},
ConsentInformation.OnConsentInfoUpdateFailureListener {
requestConsentError ->
// ...
})
Configura el consentimiento en la Mediación de AdMob
Para configurar el consentimiento en la Mediación de AdMob, completa los pasos que se indican en las siguientes secciones.
Agrega socios publicitarios a los mensajes del RGPD
Sigue los pasos que se indican en Cómo agregar socios publicitarios a los mensajes del RGPD publicados para agregar tus socios de mediación a la lista de socios publicitarios. De lo contrario, es posible que los socios no publiquen anuncios en tu app.
En la siguiente tabla, se indica el nombre del socio de tecnología publicitaria para cada fuente de anuncios:
| Fuente del anuncio | Nombre del socio de tecnología publicitaria |
|---|---|
| AppLovin | AppLovin Corp. |
| BidMachine | BidMachine |
| SDK de anuncios de BIGO | Empathy Technology Pte.Ltd. (BIGO Ads) |
| Chartboost | Chartboost |
| DT Exchange | DT Exchange (Fyber Monetization) |
| i-mobile | i-mobile |
| InMobi | InMobi |
| ironSource Ads | ironSource Mobile |
| Liftoff Monetize | Liftoff |
| LY Ads Network | LY Ads Network |
| maio | maio |
| Meta Audience Network | Meta |
| Mintegral | Mobvista/Mintegral |
| SDK de Moloco Ads | Moloco Ads |
| myTarget | Mail.ru |
| Pangle | DSP de Pangle |
| SDK de PubMatic OpenWrap | PubMatic |
| Unity Ads | Unity Ads |
| SDK de HyBid de Verve | Verve Group |
Reenvía el consentimiento a las fuentes de anuncios
En la siguiente tabla, se muestra qué fuentes de anuncios admiten el envío de indicadores de consentimiento según el RGPD desde las plataformas de administración de consentimiento que se integran en el Marco de trabajo de transparencia y consentimiento (MTC) de IAB y la especificación de consentimiento adicional de Google al SDK de las fuentes de anuncios:
| Fuente del anuncio | Versión mínima compatible |
|---|---|
| AppLovin | 12.0.0.0 |
| BidMachine | 3.3.0.0 |
| SDK de anuncios de BIGO | 5.5.2.0 |
| Chartboost | 9.13.0.0 |
| DT Exchange | 8.3.0.0 |
| i-mobile | N/A1 |
| InMobi | 10.7.5.0 |
| ironSource Ads | 7.7.0.0 |
| Liftoff Monetize | 7.4.1.0 |
| LY Ads Network | N/A1 |
| maio | N/A1 |
| Meta Audience Network | N/A2 |
| Mintegral | 17.1.61.1 |
| SDK de Moloco Ads | 3.5.0.0 |
| myTarget | 5.51.2.0 |
| Pangle | 7.9.0.9.0 |
| SDK de PubMatic OpenWrap | 4.7.0.0 |
| Unity Ads | 4.19.0.1 |
| SDK de HyBid de Verve | 3.7.1.0 |
1 La fuente de anuncios no publica anuncios para el tráfico del EEE.
2 Para obtener más detalles, comunícate con tu administrador de socios de Meta.
Cómo leer las selecciones de consentimiento
Después de que se recopile el consentimiento según el RGPD, puedes leer las opciones de consentimiento del almacenamiento local según la especificación de la versión 2 del MTC. La clave IABTCF_PurposeConsents indica el consentimiento para cada uno de los propósitos del MTC.
En el siguiente fragmento de código, se muestra cómo verificar el consentimiento para el Propósito 1:
Java
SharedPreferences sharedPref = PreferenceManager.getDefaultSharedPreferences(context);
// Example value: "1111111111"
String purposeConsents = sharedPref.getString("IABTCF_PurposeConsents", "");
// Purposes are zero-indexed. Index 0 contains information about Purpose 1.
if (!purposeConsents.isEmpty()) {
String purposeOneString = purposeConsents.charAt(0).toString();
boolean hasConsentForPurposeOne = purposeOneString.equals("1");
}
Kotlin
val sharedPref = PreferenceManager.getDefaultSharedPreferences(context)
// Example value: "1111111111"
val purposeConsents = sharedPref.getString("IABTCF_PurposeConsents", "")
// Purposes are zero-indexed. Index 0 contains information about Purpose 1.
if (purposeConsents?.isEmpty() == false) {
val purposeOneString = purposeConsents.first().toString()
val hasConsentForPurposeOne = purposeOneString == "1"
}
Preguntas frecuentes
- ¿Qué sucede si no tomo ninguna medida para cumplir con los requisitos de la plataforma de administración de consentimiento para publicar anuncios en el EEE, el Reino Unido y Suiza?
A partir del 16 de enero de 2024, si un socio no adopta una CMP certificada por Google, solo los anuncios limitados serán aptos para publicarse en el tráfico del EEE y el Reino Unido.
La aplicación de medidas por incumplimiento comenzará el 16 de enero de 2024 en un pequeño porcentaje del tráfico del EEE y el Reino Unido, y se extenderá progresivamente a la totalidad de este tráfico hacia fines de febrero de 2024. Implementa una CMP certificada antes del 16 de enero de 2024 para asegurarte de que tu monetización no se vea afectada.
- ¿Cómo puedo verificar si el usuario otorgó su consentimiento?
El consentimiento no se representa con un solo bit, sino con un conjunto de propósitos y proveedores, según se define en la especificación del TCF de IAB. Consulta las políticas de consentimiento: anuncios personalizados y no personalizados para conocer los criterios de personalización de Google Ads.
Además, las tecnologías publicitarias que se encuentran en la lista de proveedores de tecnología publicitaria (ATP) de Google y que no están registradas en la lista de proveedores del MTC usan la especificación técnica del consentimiento adicional de Google para recopilar el consentimiento. Google publica la lista de proveedores de tecnología publicitaria que no están registrados en IAB y sus IDs en la siguiente ubicación: https://storage.googleapis.com/tcfac/additional-consent-providers.csv.
Para depurar una solicitud de anuncio individual, usa la función Solucionar problemas de la configuración de privacidad del inspector de anuncios para ver los siguientes indicadores de privacidad que se pasan en la solicitud de anuncio como parte de la integración del publicador con el TCF de IAB Europe:
Etiqueta del inspector de anuncios Parámetro de consulta de solicitud de anuncio Significado Se aplica el RGPD (IABTCF_gdprApplies) gdprIndica si el RGPD se aplica a esta solicitud de anuncio. Cadena de TC (IABTCF_TCString) gdpr_consentLa cadena de TC IAB proporciona una herramienta web en la que puedes decodificar el valor de forma manual. Cadena de AC (IABTCF_AddtlConsent) addtl_consentEs la cadena de AC de la especificación técnica de Consentimiento adicional de Google. Para leer las opciones de consentimiento de manera programática, consulta Cómo leer las opciones de consentimiento para obtener más información.
- ¿Debo usar el SDK de UMP de Google para cumplir con el requisito de CMP?
No, puedes usar cualquier CMP de la lista de CMP certificadas por Google para publicar anuncios.
- ¿Cómo puedo volver a mostrar el formulario de consentimiento con el SDK de UMP, incluso si el usuario ya otorgó su consentimiento?
Si un usuario ya tomó una decisión de consentimiento, la solución de administración de consentimiento de Google no solicitará recopilar un nuevo consentimiento hasta que la cadena de TC venza o deje de ser válida.
El RGPD exige que se permita modificar el consentimiento para que los usuarios puedan retirar sus opciones de consentimiento en cualquier momento. Consulta las opciones de privacidad para implementar una manera en que los usuarios puedan retirar sus selecciones de consentimiento. Para volver a mostrar un formulario de consentimiento, llama a
showPrivacyOptionsForm().- Integré una CMP certificada por Google, pero no veo que se realicen solicitudes de anuncios a los socios de mediación, ni siquiera de los usuarios que dieron su consentimiento. ¿A qué se debe este cambio?
En virtud del MTC, Google verifica que los proveedores de tecnología publicitaria y otras fuentes de demanda programática no incumplan la política de Google y que tengan al menos una base jurídica para procesar datos antes de incluirlos en la cascada de mediación. Navega a la sección de mediación para obtener más información.
Algunos socios de mediación de la lista de proveedores de tecnología publicitaria (ATP) de Google no están registrados en la lista de proveedores del MTC. En su lugar, estos socios usan la especificación técnica del Consentimiento adicional de Google para recopilar el consentimiento. Google publica la lista de proveedores de tecnología publicitaria que no están registrados en IAB y sus IDs en la siguiente ubicación: https://storage.googleapis.com/tcfac/additional-consent-providers.csv
El SDK de UMP admite el almacenamiento de la ACString, lo que te permite agregar socios publicitarios a los mensajes del RGPD publicados sin necesidad de saber si los socios están registrados en el MTC. Cuando uses una CMP de terceros, debes hacer lo siguiente:
- Confirma que la CMP de terceros admita el almacenamiento de la ACString.
- Incluye cada socio de mediación en la lista de proveedores de tecnología publicitaria que usa la CMP de terceros para obtener el consentimiento.
- ¿Puedo cambiar el funcionamiento de mi app si los usuarios no otorgan su consentimiento? ¿La política permite esto?
Los publicadores pueden leer la cadena del MTC de IAB en sus apps. Consulta Cómo leer las opciones de consentimiento para obtener información sobre cómo leer las opciones de consentimiento de manera programática. Los publicadores deben revisar sus obligaciones en virtud de las reglamentaciones pertinentes con un asesor legal.
- Cuando selecciono Administrar opciones y doy mi consentimiento para todos los propósitos, no veo ningún anuncio. ¿Por qué? ¿A qué se debe este cambio?
Además de recopilar el consentimiento para los fines, también debes recopilar el consentimiento de los proveedores. Tanto el consentimiento de los fines como el de los proveedores son necesarios para que cualquier proveedor, como Google, publique anuncios adecuados.
- ¿Cómo implemento la versión 2 de la cadena de AC para los usuarios que ya dieron su consentimiento para la versión 1?
Verifica la clave
IABTCF_AddtlConsenten el almacenamiento local según la especificación técnica del Consentimiento adicional de Google para determinar si un usuario dio su consentimiento para la versión 2 de la cadena de AC y si necesitas volver a mostrar el formulario de consentimiento.Java
SharedPreferences sharedPref = PreferenceManager.getDefaultSharedPreferences(context); // Example value: "2~1.35.41.101~dv.9.21.81" String additionalConsent = sharedPref.getString("IABTCF_AddtlConsent", ""); // Index 0 contains information about the specification version number. if (!additionalConsent.isEmpty()) { String specACVersion = additionalConsent.charAt(0); boolean isACVersion2 = purposeOneString.equals("2"); }Kotlin
val sharedPref = PreferenceManager.getDefaultSharedPreferences(context) // Example value: "2~1.35.41.101~dv.9.21.81" val additionalConsent = sharedPref.getString("IABTCF_AddtlConsent", "") // Index 0 contains information about the specification version number. if (!additionalConsent.isEmpty()) { val specACVersion = additionalConsent.first() val isACVersion2 = specACVersion == "2" }