Segmentação

Este guia explica como fornecer informações de segmentação para uma solicitação de anúncio. Para um exemplo funcional, faça o download do aplicativo API Demo para Android.

Fazer o download da demonstração da API

Pré-requisito

RequestConfiguration

RequestConfiguration é um objeto que coleta informações de segmentação para serem aplicadas globalmente por meio de um MobileAds método estático.

Para atualizar a configuração da solicitação, obtenha um builder do do Google, faça as atualizações desejadas e defina-a da seguinte maneira:

Java

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

Kotlin

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

Configuração "feito para crianças"

De acordo com a Lei de Proteção da Privacidade On-line das Crianças (COPPA, na sigla em inglês) (COPPA); existe uma configuração chamada "tag de tratamento para direcionamento a crianças". Ao definir esta tag, você certifica que esta notificação é precisa e tem autorização para agir em nome do proprietário do app. entende que o abuso dessa configuração pode resultar em rescisão da sua Conta do Google.

Como desenvolvedor de apps, você pode indicar se quer que o Google trate seus como feito para crianças quando você faz uma solicitação de anúncio. Se você indicar que quiser que o Google trate seu conteúdo como feito para crianças, tomamos medidas para desativar a IBA e os anúncios de remarketing nessa solicitação de anúncio.

A configuração pode ser usada em todas as versões do SDK do Google Play Services por RequestConfiguration.Builder.setTagForChildDirectedTreatment(int):

  • Ligar para setTagForChildDirectedTreatment com TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE para indicar que você quer conteúdo tratado como feito para crianças de acordo com a COPPA. Isso evita a transmissão do identificador de publicidade do Android (AAID).

  • Ligar para setTagForChildDirectedTreatment com TAG_FOR_CHILD_DIRECTED_TREATMENT_FALSE para indicar que você não quer conteúdo tratado como feito para crianças de acordo com a COPPA.

  • Ligar para setTagForChildDirectedTreatment com TAG_FOR_CHILD_DIRECTED_TREATMENT_UNSPECIFIED se você não quiser indicar como você gostaria que seu conteúdo fosse tratado em relação à COPPA em solicitações de anúncios.

O exemplo a seguir indica que você quer que o conteúdo seja tratado como feito para crianças de acordo com a 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)

Você pode marcar suas solicitações de anúncios para que sejam tratadas por usuários no do Espaço Econômico Europeu (EEE) abaixo da idade de consentimento. Esse recurso é criada para facilitar a conformidade com os Termos o Regulamento de proteção de dados (GDPR). É possível que você tenha outras informações obrigações de conformidade com o GDPR. Leia as orientações da União Europeia e consulte seu próprio advogado. As ferramentas do Google foram criadas para facilitar a conformidade e não livram nenhum editor específico das obrigações a lei. Saiba mais sobre como o GDPR afeta os editores.

Ao usar esse recurso, uma tag para usuários abaixo da idade de consentimento na Europa (TFUA) será incluído na solicitação de anúncio. Esse parâmetro desativa publicidade personalizada, incluindo remarketing, para todas as solicitações de anúncios. Ela também desativa solicitações para fornecedores de anúncios terceirizados, como pixels de medição de anúncios e servidores de anúncios de terceiros.

Como nas configurações direcionadas a crianças, existe um método RequestConfiguration.Builder para definir o parâmetro TFUA: setTagForUnderAgeOfConsent(), com as opções a seguir.

  • Ligar para setTagForUnderAgeOfConsent() com TAG_FOR_UNDER_AGE_OF_CONSENT_TRUE para indicar que você quer que a solicitação de anúncio seja tratada para os usuários na do Espaço Econômico Europeu (EEE) abaixo da idade de consentimento. Isso também impede a transmissão do identificador de publicidade do Android (AAID).

  • Ligar para setTagForUnderAgeOfConsent() com TAG_FOR_UNDER_AGE_OF_CONSENT_FALSE para indicar que você quer que a solicitação de anúncio não seja tratada para os usuários no Espaço Econômico Europeu (EEE) abaixo da idade de consentimento.

  • Ligar para setTagForUnderAgeOfConsent() com TAG_FOR_UNDER_AGE_OF_CONSENT_UNSPECIFIED para indicar que você não especificou se a solicitação de anúncio deve receber tratamento para usuários na do Espaço Econômico Europeu (EEE) abaixo da idade de consentimento.

O exemplo a seguir indica que você quer que a TFUA seja incluída nas suas solicitações de anúncios:

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)

As tags para ativar a configuração "Direcionado para crianças". e setTagForUnderAgeOfConsent() não podem ser definidos simultaneamente como true. Se forem, a configuração feito para crianças terá precedência.

Filtragem de conteúdo do anúncio

Para obedecer à política de anúncios inadequados do Google Play que inclua as ofertas associadas em um anúncio, todos os anúncios e os respectivos as ofertas mostradas no app precisam ser adequadas ao conteúdo nota de seu app, mesmo que o conteúdo esteja em conformidade com o Google Políticas do Google Play.

Ferramentas como a classificação máxima do conteúdo do anúncio ajudam você a ter mais controle sobre conteúdo dos anúncios mostrados aos usuários. Você pode definir uma classificação máxima do conteúdo ajudam a manter a conformidade com as políticas da plataforma.

Os aplicativos podem definir uma classificação máxima do conteúdo do anúncio para suas solicitações de anúncio usando o setMaxAdContentRating . Os anúncios da AdMob retornados quando essa opção está configurada têm uma classificação do conteúdo igual ou abaixo desse nível. Os valores possíveis para este extra de rede são baseados classificações de classificação de conteúdo digital e precisa ser um dos seguintes strings:

  • MAX_AD_CONTENT_RATING_G
  • MAX_AD_CONTENT_RATING_PG
  • MAX_AD_CONTENT_RATING_T
  • MAX_AD_CONTENT_RATING_MA

O código a seguir configura um objeto RequestConfiguration para especificar que o conteúdo do anúncio retornado deve corresponder a uma designação de classificação de conteúdo digital não maior 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)

Saiba mais sobre:

.

Tratamento de privacidade para editores (Beta)

O Tratamento de privacidade do editor (PPT) API é uma ferramenta opcional que permite aos apps indicar se precisam desativar os anúncios personalização para todas as solicitações de anúncios usando o setPublisherPrivacyPersonalizationState(). Ao usar esse recurso, um parâmetro de tratamento de privacidade do editor (PPT) é será incluído em todas as solicitações de anúncios futuras pelo restante da sessão.

Por padrão, as solicitações de anúncios ao Google recebem anúncios personalizados. O seguinte desativa a personalização de anúncios para todas as solicitações de anúncios:

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)

Solicitação de anúncio

O objeto AdManagerAdRequest coleta segmentação informações sejam enviadas com uma solicitação de anúncio.

Segmentação personalizada

É possível transmitir pares de chave-valor personalizados para segmentar campanhas do Google Ad Manager (linha itens) por 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()

É possível transmitir vários valores para uma chave como uma lista de strings. Por exemplo, para segmentar pessoas na faixa dos 20 anos, em vez de somente jovens de 25 anos.

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

Confira o exemplo de segmentação personalizada do Ad Manager. para uma implementação de segmentação personalizada no aplicativo API Demo para Android.

Exclusões de categoria

É possível adicionar um nível de exclusão de categoria no nível do espaço a uma solicitação usando o método addCategoryExclusion() método fornecido por 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()

Confira o exemplo de exclusões de categoria do Ad Manager. para uma implementação de exclusões de categoria no app API Demo para Android.

Identificadores fornecidos pelo editor

É possível definir um identificador fornecido pelo editor (PPID, na sigla em inglês) para uso em limite de frequência. segmentação por público-alvo, rotação de anúncios sequencial e outros controles de exibição de anúncios com base no público-alvo em vários dispositivos.

Veja um exemplo de configuração do PPID:

Java

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

Kotlin

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

Confira o exemplo de PPID do Ad Manager. para uma implementação de identificadores fornecidos pelo editor (PPID) no Android App de demonstração da API.

Indicadores fornecidos pelo editor

Você pode enviar dados contextuais e de público-alvo indicadores fornecidos pelo editor (PPS) em solicitações de anúncios. Com o PPS, é possível usar os dados do usuário para melhorar da monetização programática ao comunicar as características de seu público-alvo proponentes em todos tipos de transação, usando taxonomias padrão, sem a necessidade de compartilhar identificadores de usuários. Seu público podem incluir dados comportamentais e baseados em interesses (IAB Audience Taxonomia 1.1) e contextual dados (Taxonomia de conteúdo do 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 conteúdo

Para fornecer um URL de conteúdo para anúncios segmentados por conteúdo e brand safety, você pode chamar setContentUrl() ao criar um 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()

Brand safety (Beta)

Os aplicativos que exibem conteúdo dinâmico destinados a públicos variados são uma pequena lista de URLs usando o setNeighboringContentUrls() ao criar um 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() é diferente de .setContentUrl() porque é apenas usados para brand safety.