Segmentación

En esta guía, se explica cómo proporcionar información de segmentación a una solicitud de anuncio. Para ver un ejemplo funcional, descarga la app Android API Demo.

Descargar API Demo

Requisitos

RequestConfiguration

RequestConfiguration es un objeto que recopila información de segmentación para aplicarla de forma global mediante un método estático MobileAds.

Para actualizar la configuración de la solicitud, obtén un compilador de la configuración existente, realiza las actualizaciones deseadas y establécelo de la siguiente manera:

Java

RequestConfiguration requestConfiguration = MobileAds.getRequestConfiguration()
    .toBuilder()
    .build();
MobileAds.setRequestConfiguration(requestConfiguration);

Kotlin

var requestConfiguration = MobileAds.getRequestConfiguration()
  .toBuilder()
  .build()
MobileAds.setRequestConfiguration(requestConfiguration)

Parámetro de configuración de contenido dirigido a niños

Para cumplir con la Ley de Protección de la Privacidad de Menores en Internet (COPPA), hay una configuración llamada "etiqueta de contenido dirigido a niños". Si configuras esta etiqueta, certificas que esta notificación es precisa y que estás autorizado para actuar en nombre del propietario de la app. Comprendes que el abuso de esta configuración puede ocasionar la rescisión de tu Cuenta de Google.

Como desarrollador de apps, puedes indicar si deseas que Google trate tu contenido como dirigido a niños cuando envías una solicitud de anuncio. Si indicas que deseas que Google trate tu contenido como dirigido a niños, tomaremos las medidas necesarias para inhabilitar la IBA y los anuncios de remarketing en esa solicitud de anuncio.

El parámetro de configuración se puede usar con todas las versiones del SDK de Servicios de Google Play a través de RequestConfiguration.Builder.setTagForChildDirectedTreatment(int):

  • Llama a setTagForChildDirectedTreatment con TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE para indicar que quieres que tu contenido se considere dirigido a niños de conformidad con la ley COPPA. De esta manera, se evita la transmisión del identificador de publicidad de Android (AAID).

  • Llama a setTagForChildDirectedTreatment con TAG_FOR_CHILD_DIRECTED_TREATMENT_FALSE para indicar que no quieres que tu contenido se trate como dirigido a niños de conformidad con la ley COPPA.

  • Llama a setTagForChildDirectedTreatment con TAG_FOR_CHILD_DIRECTED_TREATMENT_UNSPECIFIED si no quieres indicar cómo quieres que se trate tu contenido en relación con la ley COPPA en las solicitudes de anuncios.

En el siguiente ejemplo, se indica que quieres que tu contenido se trate como dirigido a niños de conformidad con la ley COPPA:

Java

RequestConfiguration requestConfiguration = MobileAds.getRequestConfiguration()
    .toBuilder()
    .setTagForChildDirectedTreatment(RequestConfiguration.TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE)
    .build();
MobileAds.setRequestConfiguration(requestConfiguration);

Kotlin

var requestConfiguration = MobileAds.getRequestConfiguration()
  .toBuilder()
  .setTagForChildDirectedTreatment(RequestConfiguration.TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE)
  .build()
MobileAds.setRequestConfiguration(requestConfiguration)

Puedes marcar tus solicitudes de anuncios de manera que se traten como contenido para usuarios del Espacio Económico Europeo (EEE) que no alcanzan la edad de consentimiento. Esta función está diseñada para facilitar el cumplimiento del Reglamento General de Protección de Datos (GDPR). Tenga en cuenta que puede tener otras obligaciones legales en virtud del GDPR. Revisa los lineamientos de la Unión Europea y consulta a tu asesor legal. Ten en cuenta que las herramientas de Google están diseñadas para facilitar el cumplimiento y no eximen a ningún publicador de sus obligaciones legales. Obtén más información sobre cómo el GDPR afecta a los publicadores.

Cuando se utiliza esta función, se incluye una etiqueta para usuarios que no alcanzan la edad de consentimiento en Europa (TFUA) en la solicitud de anuncio. Este parámetro inhabilita la publicidad personalizada, incluido el remarketing, para todas las solicitudes de anuncios. También inhabilita las solicitudes a proveedores de anuncios externos, como los píxeles de medición de anuncios y los servidores de anuncios de terceros.

Al igual que la configuración de contenido dirigido a niños, hay un método en RequestConfiguration.Builder para configurar el parámetro TFUA: setTagForUnderAgeOfConsent(), con las siguientes opciones.

  • Llama a setTagForUnderAgeOfConsent() con TAG_FOR_UNDER_AGE_OF_CONSENT_TRUE para indicar que deseas que la solicitud de anuncio se trate para los usuarios del Espacio Económico Europeo (EEE) que no alcanzan la edad de consentimiento. Esto también evita la transmisión del identificador de publicidad de Android (AAID).

  • Llama a setTagForUnderAgeOfConsent() con TAG_FOR_UNDER_AGE_OF_CONSENT_FALSE para indicar que deseas que la solicitud de anuncio no reciba tratamiento para usuarios del Espacio Económico Europeo (EEE) que no alcanzan la edad de consentimiento.

  • Llama a setTagForUnderAgeOfConsent() con TAG_FOR_UNDER_AGE_OF_CONSENT_UNSPECIFIED para indicar que no especificaste si la solicitud de anuncio debería recibir contenido para los usuarios del Espacio Económico Europeo (EEE) que no alcanzan la edad de consentimiento.

En el siguiente ejemplo, se indica que deseas que se incluya TFUA en tus solicitudes de anuncios:

Java

RequestConfiguration requestConfiguration = MobileAds.getRequestConfiguration()
    .toBuilder()
    .setTagForUnderAgeOfConsent(RequestConfiguration.TAG_FOR_UNDER_AGE_OF_CONSENT_TRUE)
    .build();
MobileAds.setRequestConfiguration(requestConfiguration);

Kotlin

var requestConfiguration = MobileAds.getRequestConfiguration()
  .toBuilder()
  .setTagForUnderAgeOfConsent(RequestConfiguration.TAG_FOR_UNDER_AGE_OF_CONSENT_TRUE)
  .build()
MobileAds.setRequestConfiguration(requestConfiguration)

Las etiquetas para habilitar el parámetro de configuración dirigido a niños y setTagForUnderAgeOfConsent() no deben establecerse simultáneamente en true. Si es así, prevalecerá la configuración de contenido dirigido a niños.

Filtrado del contenido del anuncio

Para satisfacer la Política de Anuncios Inapropiados de Google Play, que incluye ofertas asociadas, todos los anuncios y las ofertas asociadas que se muestren en tu app deben ser adecuados para la clasificación del contenido de la app, incluso si el contenido cumple con las políticas de Google Play.

Las herramientas como la clasificación máxima del contenido del anuncio pueden ayudarte a tener más control sobre el contenido de los anuncios que se muestran a los usuarios. Puedes establecer una clasificación máxima del contenido para cumplir con las políticas de la plataforma.

Las apps pueden establecer una clasificación máxima del contenido del anuncio para sus solicitudes de anuncios con el método setMaxAdContentRating. Los anuncios de AdMob que se muestran cuando se configura tienen una clasificación del contenido igual o inferior a ese nivel. Los valores posibles para este extra de red se basan en clasificaciones de etiquetas de contenido digital y deben ser una de las siguientes cadenas:

  • MAX_AD_CONTENT_RATING_G
  • MAX_AD_CONTENT_RATING_PG
  • MAX_AD_CONTENT_RATING_T
  • MAX_AD_CONTENT_RATING_MA

El siguiente código configura un objeto RequestConfiguration para especificar que el contenido del anuncio que se muestra debe corresponder a una designación de etiqueta de contenido digital no mayor que G:

Java

RequestConfiguration requestConfiguration = MobileAds.getRequestConfiguration()
    .toBuilder()
    .setMaxAdContentRating(RequestConfiguration.MAX_AD_CONTENT_RATING_G)
    .build();
MobileAds.setRequestConfiguration(requestConfiguration);

Kotlin

var requestConfiguration = MobileAds.getRequestConfiguration()
  .toBuilder()
  .setMaxAdContentRating(RequestConfiguration.MAX_AD_CONTENT_RATING_G)
  .build()
MobileAds.setRequestConfiguration(requestConfiguration)

Consulta lo siguiente:

Tratamiento de Privacidad del Editor (beta)

La API de Tratamiento de Privacidad para Publicadores (PPT) es una herramienta opcional que permite que las apps indiquen si deben desactivar la personalización de anuncios para todas las solicitudes de anuncios con el método setPublisherPrivacyPersonalizationState(). Cuando se utiliza esta función, se incluye un parámetro de tratamiento de privacidad del publicador (PPT) en todas las solicitudes de anuncios futuras durante el resto de la sesión.

De forma predeterminada, las solicitudes de anuncios a Google se publican anuncios personalizados. El siguiente código desactiva la personalización de anuncios para todas las solicitudes de anuncios:

Java

RequestConfiguration requestConfiguration = MobileAds.getRequestConfiguration()
    .toBuilder()
    .setPublisherPrivacyPersonalizationState(PublisherPrivacyPersonalizationState.DISABLED)
    .build();
MobileAds.setRequestConfiguration(requestConfiguration);

Kotlin

var requestConfiguration = MobileAds.getRequestConfiguration()
  .toBuilder()
  .setPublisherPrivacyPersonalizationState(PublisherPrivacyPersonalizationState.DISABLED)
  .build()
MobileAds.setRequestConfiguration(requestConfiguration)

Solicitud de anuncio

El objeto AdManagerAdRequest recopila información de segmentación que se enviará con una solicitud de anuncio.

Segmentación personalizada

Puedes pasar pares clave-valor personalizados para segmentar campañas de Google Ad Manager (líneas de pedido) a través de AdManagerAdRequest.Builder.addCustomTargeting():

Java

// Example: Pass custom targeting "age=25".
AdManagerAdRequest newRequest = new AdManagerAdRequest.Builder()
    .addCustomTargeting("age", "25")
    .build();

Kotlin

// Example: Pass custom targeting "age=25".
var newRequest = AdManagerAdRequest.Builder()
  .addCustomTargeting("age", "25")
  .build()

Puedes pasar varios valores para una clave como una lista de cadenas. Por ejemplo, para segmentar a personas de entre veinte y no solo de 25.

.addCustomTargeting("age", Arrays.asList("24", "25", "26"))

Consulta el ejemplo de segmentación personalizada de Ad Manager para ver una implementación de ella en la app de demostración de la API de Android.

Exclusiones de categorías

Puedes agregar un nivel de exclusión de categoría a nivel de espacio a una solicitud mediante el método addCategoryExclusion() que proporciona AdManagerAdRequest.Builder:

Java

// Example: Exclude "automobile" and "boat" categories.
AdManagerAdRequest newRequest = new AdManagerAdRequest.Builder()
    .addCategoryExclusion("automobile")
    .addCategoryExclusion("boat")
    .build();

Kotlin

// Example: Exclude "automobile" and "boat" categories.
var newRequest = AdManagerAdRequest.Builder()
  .addCategoryExclusion("automobile")
  .addCategoryExclusion("boat")
  .build()

Consulta el ejemplo de exclusiones de categorías de Ad Manager para ver una implementación de las exclusiones de categoría en la app de demostración de la API de Android.

Identificadores proporcionados por el publicador

Puedes configurar un identificador proporcionado por el publicador (PPID) para usarlo en la limitación de frecuencia, la segmentación y segmentación de público, la rotación secuencial de anuncios y otros controles de publicación de anuncios basados en el público en todos los dispositivos.

Este es un ejemplo de configuración del PPID:

Java

AdManagerAdRequest adRequest = new AdManagerAdRequest.Builder()
    .setPublisherProvidedId("AB123456789")
    .build();

Kotlin

var adRequest = AdManagerAdRequest.Builder()
  .setPublisherProvidedId("AB123456789")
  .build()

Consulta el ejemplo de PPID de Ad Manager para ver una implementación de identificadores proporcionados por el publicador (PPID) en la app de demostración de la API de Android.

Indicadores proporcionados por el publicador

Puedes enviar datos contextuales y del público como indicadores proporcionados por el publicador (PPS) en las solicitudes de anuncios. Con PPS, puedes usar tus datos del usuario para mejorar la monetización programática comunicando las características de tu público a los ofertantes en todos los tipos de transacciones con taxonomías estándar, sin necesidad de compartir identificadores de usuario. Las características de tu público pueden incluir datos basados en intereses y comportamientos (Taxonomía de público de IAB 1.1) y datos contextuales (Taxonomía de contenido de IAB 2.2).

Java

Bundle extras = new Bundle();
// Set the demographic to an audience with an "Age Range" of 30-34 and an
// interest in mergers and acquisitions.
extras.putIntegerArrayList("IAB_AUDIENCE_1_1", arrayListOf(6,284));
// Set the content to sedan, station wagon and SUV automotive values.
extras.putIntegerArrayList("IAB_CONTENT_2_2", arrayListOf(4,5,6));

AdManagerAdRequest request = new AdManagerAdRequest.Builder()
  .addNetworkExtrasBundle(AdMobAdapter.class, extras)
  .build()

Kotlin

val extras = Bundle()
// Set the demographic to an audience with an "Age Range" of 30-34 and an
// interest in mergers and acquisitions.
extras.putIntegerArrayList("IAB_AUDIENCE_1_1", arrayListOf(6,284))
// Set the content to sedan, station wagon and SUV automotive values.
extras.putIntegerArrayList("IAB_CONTENT_2_2", arrayListOf(4,5,6))

val request = AdRequest.Builder()
  .addNetworkExtrasBundle(AdMobAdapter::class.java, extras)
  .build()

URL de contenido

Si deseas proporcionar una URL de contenido para anuncios segmentados por contenido y seguridad de la marca, puedes llamar a setContentUrl() cuando compiles una AdManagerAdRequest:

Java

AdManagerAdRequest.Builder builder = new AdManagerAdRequest.Builder();
builder.setContentUrl("https://www.example.com");
AdManagerAdRequest request = builder.build();

Kotlin

val builder = AdManagerAdRequest.Builder()
builder.setContentUrl("https://www.example.com")
val request = builder.build()

Seguridad de la marca (beta)

Las aplicaciones que muestran contenido dinámico destinado a distintos públicos pueden proporcionar una breve lista de URLs con el método setNeighboringContentUrls() cuando se compila un AdManagerAdRequest:

Java

ArrayList<String> urls = new ArrayList<String>();
urls.add("https://www.mycontenturl1.com");
urls.add("https://www.mycontenturl2.com");
urls.add("https://www.mycontenturl3.com");
urls.add("https://www.mycontenturl4.com");
AdManagerAdRequest requestWithContent = new AdManagerAdRequest.Builder()
    .setNeighboringContentUrls(urls)
    .build();

Kotlin

var urls = mutableListOf("https://www.mycontenturl1.com", "https://www.mycontenturl2.com",
                         "https://www.mycontenturl3.com", "https://www.mycontenturl4.com")
var requestWithContent = AdManagerAdRequest.Builder()
  .setNeighboringContentUrls(urls)
  .build()

.setNeighboringContentUrls() difiere de .setContentUrl() en que solo se usa para la seguridad de la marca.