Este guia explica como fornecer informações de segmentação a uma solicitação de anúncio. Para um exemplo funcional, faça o download do app de demonstração da API do Android.
Fazer o download da demonstração da API
Pré-requisitos
- Concluir o Guia explicativo.
RequestConfiguration
RequestConfiguration
é um objeto que coleta informações de segmentação para serem aplicadas globalmente com
um método estático
MobileAds
.
Para atualizar a configuração da solicitação, consiga um builder da configuração atual, faça as atualizações desejadas e defina-o 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 direcionada a crianças
Para fins de conformidade com a Lei de Proteção da Privacidade On-line das Crianças (COPPA), há uma configuração chamada "tag para tratamento para direcionamento a crianças". Ao configurar essa tag, você certifica que a notificação é precisa e que tem autorização para agir em nome do proprietário do app. Você entende que o abuso dessa configuração pode resultar no encerramento da sua Conta do Google.
Como desenvolvedor de apps, você pode indicar se quer que o Google trate seu conteúdo como direcionado ao público infantil quando for fazer uma solicitação de anúncio. Se você indicar que quer que o Google trate seu conteúdo como direcionado a crianças, seguiremos etapas para desativar o IBA e os anúncios de remarketing nessa solicitação de anúncio.
A configuração pode ser usada com todas as versões do SDK do Google Play Services
pelo RequestConfiguration.Builder.setTagForChildDirectedTreatment(int)
:
Chame
setTagForChildDirectedTreatment
comTAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE
para indicar que você quer que seu conteúdo seja tratado como voltado para crianças de acordo com a COPPA. Isso impede a transmissão do identificador de publicidade do Android (AAID, na sigla em inglês).Chame
setTagForChildDirectedTreatment
comTAG_FOR_CHILD_DIRECTED_TREATMENT_FALSE
para indicar que você não quer que seu conteúdo seja tratado como direcionado a crianças para os fins da COPPA.Chame
setTagForChildDirectedTreatment
comTAG_FOR_CHILD_DIRECTED_TREATMENT_UNSPECIFIED
se não quiser indicar como você quer que seu conteúdo seja tratado em relação à COPPA em solicitações de anúncios.
O exemplo a seguir indica que você quer que seu conteúdo seja tratado como direcionado a 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)
Usuários abaixo da idade de consentimento
Você pode marcar suas solicitações de anúncios para que sejam tratadas como direcionadas a usuários no Espaço Econômico Europeu (EEE) abaixo da idade de consentimento. Esse recurso foi projetado para ajudar a cumprir o Regulamento geral de proteção de dados (GDPR). É possível que você tenha outras obrigações legais de acordo com o GDPR. Leia as orientações da União Europeia e consulte sua assessoria jurídica. As ferramentas do Google foram criadas para facilitar a conformidade e não livram os editores das obrigações legais. 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, na sigla em inglês) é incluída na solicitação de anúncio. Ele desativa a publicidade personalizada, incluindo o remarketing, para todas as solicitações de anúncios. As solicitações a fornecedores de anúncios terceirizados também serão desativadas, como pixels de medição de anúncios e servidores de anúncios de terceiros.
Assim como nas configurações direcionadas a crianças, há um método em
RequestConfiguration.Builder
para definir o parâmetro TFUA:
setTagForUnderAgeOfConsent()
,
com as opções a seguir.
Chame
setTagForUnderAgeOfConsent()
comTAG_FOR_UNDER_AGE_OF_CONSENT_TRUE
para indicar que você quer que a solicitação de anúncio seja tratada para usuários no 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).Chame
setTagForUnderAgeOfConsent()
comTAG_FOR_UNDER_AGE_OF_CONSENT_FALSE
para indicar que você quer que a solicitação de anúncio não seja tratada para usuários no Espaço Econômico Europeu (EEE) abaixo da idade de consentimento.Chame
setTagForUnderAgeOfConsent()
comTAG_FOR_UNDER_AGE_OF_CONSENT_UNSPECIFIED
para indicar que você não especifica se a solicitação de anúncio deve ser tratada para usuários no Espaço Econômico Europeu (EEE) abaixo da idade de consentimento.
O exemplo a seguir indica que você quer incluir o TFUA nas 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 para direcionamento a crianças e setTagForUnderAgeOfConsent()
não devem ser definidas simultaneamente como true
.
Se forem, a configuração 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 inclui ofertas associadas em um anúncio, todos os anúncios e ofertas associadas exibidos no app precisam ser adequados para a classificação do conteúdo do app, mesmo que o conteúdo esteja em conformidade com as 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 o conteúdo dos anúncios mostrados aos usuários. Você pode definir uma classificação máxima para ajudar na conformidade com as políticas da plataforma.
Os apps podem definir uma classificação máxima do conteúdo do anúncio para as solicitações de anúncios usando o
método
setMaxAdContentRating
. Os anúncios da AdMob retornados quando esse recurso é configurado têm uma classificação do conteúdo igual ou inferior a esse nível. Os valores possíveis para esse extra de rede são baseados em
classificações de conteúdo digital e precisam ser uma das 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 precisa 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:
Como definir a classificação máxima do conteúdo para cada solicitação de anúncio
Como definir a classificação máxima do conteúdo do anúncio para um app ou uma conta
Tratamento de privacidade do editor (Beta)
A
Tratamento de privacidade do editor
(PPT) é uma ferramenta opcional que permite que os apps indiquem se a personalização de anúncios
é desativada para todas as solicitações usando o método
setPublisherPrivacyPersonalizationState()
.
Ao usar esse recurso, um parâmetro de tratamento de privacidade do editor (PPT, na sigla em inglês) é
incluído em todas as solicitações de anúncios futuras no restante da sessão.
Por padrão, as solicitações de anúncios ao Google recebem anúncios personalizados. O código a seguir 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 informações de
segmentação que serão 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 (itens
de linha) usando 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 diversos valores para uma chave como uma lista de strings. Por exemplo, segmentar indivíduos na faixa dos 25 anos, em vez de apenas 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 app API Demo para Android.
Exclusões de categorias
É possível adicionar a uma solicitação um nível de exclusão de categoria no nível do slot usando o método addCategoryExclusion()
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 ver uma implementação de exclusões de categoria no app de demonstração da API do 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 de público-alvo, rotação sequencial de anúncios 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 app de demonstração da API do Android.
Indicadores fornecidos pelo editor
Você pode enviar dados contextuais e de público-alvo como indicadores fornecidos pelo editor (PPS, na sigla em inglês) em solicitações de anúncios. Com o PPS, é possível usar os dados do usuário para melhorar a monetização programática, comunicando as características do público-alvo aos proponentes em todos os tipos de transação usando taxonomias padrão, sem precisar compartilhar identificadores de usuários. As características do público-alvo podem incluir dados comportamentais e baseados em interesses (Taxonomia de público-alvo do IAB 1.1) e dados contextuais (taxonomia de conteúdo 2.2 do IAB).
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 apps que exibem conteúdo dinâmico destinado a públicos variados podem fornecer uma pequena lista de URLs usando o método 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()
A .setNeighboringContentUrls()
difere de .setContentUrl()
porque é usada apenas
para brand safety.