Targeting

Questa guida spiega come fornire informazioni sul targeting all'SDK Google Mobile Ads.

Per un esempio funzionante, scarica l'app Android API Demo.

Scarica la demo dell'API

Prerequisito

Prima di continuare, configura Google Mobile Ads SDK (Legacy).

RequestConfiguration

RequestConfiguration raccoglie le informazioni sul targeting applicate a livello globale a ogni richiesta di annuncio. Per i tag di targeting disponibili, consulta la documentazione di RequestConfiguration.Builder.

Per aggiornare la configurazione della richiesta, ottieni un builder dalla configurazione esistente, esegui gli aggiornamenti selezionati e impostalo come segue:

Kotlin

val requestConfiguration = MobileAds.getRequestConfiguration()
MobileAds.setRequestConfiguration(requestConfiguration)

Java

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

Per assicurarti che tutte le richieste di annunci applichino le modifiche alla configurazione delle richieste, imposta la configurazione delle richieste prima di inizializzare Google Mobile Ads SDK (Legacy).

Imposta il trattamento in base all'età

Per aiutarti a gestire la conformità alle normative sulla privacy vigenti relative a bambini e adolescenti, Google Mobile Ads SDK (Legacy) fornisce un'impostazione di trattamento in base all'età. L'impostazione trattamento in base all'età ti consente di indicare se Google Mobile Ads SDK (Legacy) deve applicare protezioni specifiche per la pubblicazione di annunci per bambini, adolescenti o un'età non specificata.

Puoi impostare il trattamento in base all'età con il metodo setAgeRestrictedTreatment() con l'API RequestConfiguration.Builder.

L'esempio seguente indica che le richieste di annunci devono essere soggette al trattamento "bambini":

Kotlin

val requestConfiguration =
  MobileAds.getRequestConfiguration()
    .toBuilder()
    // Indicate that ad requests should have child age treatment.
    .setAgeRestrictedTreatment(AgeRestrictedTreatment.CHILD)
    .build()
MobileAds.setRequestConfiguration(requestConfiguration)

Java

RequestConfiguration requestConfiguration =
    MobileAds.getRequestConfiguration().toBuilder()
        // Indicate that ad requests should have child age treatment.
        .setAgeRestrictedTreatment(AgeRestrictedTreatment.CHILD)
        .build();
MobileAds.setRequestConfiguration(requestConfiguration);

Per indicare il trattamento per gli adolescenti o un trattamento in base all'età non specificato, sostituisci l'impostazione CHILD con quanto segue:

  • TEEN
  • UNSPECIFIED

Quando utilizzi l'impostazione, Google Mobile Ads SDK (Legacy) include un parametro tfat nelle richieste di annuncio. Consulta il tuo consulente legale per determinare il trattamento dell'età applicabile per i tuoi utenti in base ai tuoi obblighi legali e normativi. Per saperne di più, consulta Codifica una richiesta di annuncio per il trattamento in base all'età.

Eseguire la migrazione al trattamento in base all'età da TFCD e TFUA

L'impostazione di trattamento in base all'età sostituisce le impostazioni .setTagForChildDirectedTreatment() (TFCD) e .setTagForUnderAgeOfConsent() (TFUA) obsolete.

La tabella seguente mostra le impostazioni TFCD e TFUA e i relativi equivalenti di trattamento in base all'età:

TFCD

TFCD Trattamento dei dati in base all'età
TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE AgeRestrictedTreatment.CHILD
TAG_FOR_CHILD_DIRECTED_TREATMENT_FALSE AgeRestrictedTreatment.UNSPECIFIED
TAG_FOR_CHILD_DIRECTED_TREATMENT_UNSPECIFIED AgeRestrictedTreatment.UNSPECIFIED
Nessun valore assegnato .setTagForChildDirectedTreatment() AgeRestrictedTreatment.UNSPECIFIED
Nessun equivalente AgeRestrictedTreatment.TEEN

TFUA

TFUA Trattamento dei dati in base all'età
TAG_FOR_UNDER_AGE_OF_CONSENT_TRUE AgeRestrictedTreatment.CHILD
TAG_FOR_UNDER_AGE_OF_CONSENT_FALSE AgeRestrictedTreatment.UNSPECIFIED
TAG_FOR_UNDER_AGE_OF_CONSENT_UNSPECIFIED AgeRestrictedTreatment.UNSPECIFIED
Nessun valore assegnato .setTagForUnderAgeOfConsent() AgeRestrictedTreatment.UNSPECIFIED
Nessun equivalente AgeRestrictedTreatment.TEEN

Comprendere le interazioni del trattamento in base all'età con TFCD e TFUA

Se utilizzi l'impostazione di trattamento in base all'età e le impostazioni TFCD o TFUA, Google applica il trattamento più conservativo.

Trattamento dei dati in base all'età con la mediazione

Se imposti il trattamento in base all'età utilizzando Google Mobile Ads SDK (Legacy), gli adattatori di mediazione inoltrano l'indicatore di trattamento in base all'età agli SDK di terze parti con mediazione.

La seguente tabella elenca le versioni dell'adattatore di mediazione che supportano l'inoltro dell'indicatore di trattamento con limitazioni di età all'SDK di terze parti con mediazione:

Nome dell'adattatore di mediazione Versione minima supportata
AppLovin 13.6.3.0
BidMachine 3.7.1.1
Bigo 5.9.0.1
Chartboost 9.12.1.1
DTExchange (Fyber) 8.4.5.1
i-mobile 2.3.2.4
InMobi 11.3.0.1
IronSource 9.4.3.0
Liftoff Monetize (Vungle) 7.7.4.2
LY (Line) 3.1.1.1
maio 2.0.9.0
Meta (Facebook) 6.21.0.4
Mintegral 17.1.61.1
Moloco 4.10.0.0
MyTarget 5.47.1.1
Pangle 8.1.0.3.1
PubMatic 5.1.2.2
Verve 3.9.0.0

Impostazione rivolta ai minori

Ai fini del Children's Online Privacy Protection Act (COPPA), esiste un'impostazione chiamata "Tag per il trattamento per siti o servizi destinati ai minori". Se imposti questo tag, certifichi che la presente notifica è accurata e che disponi dell'autorizzazione ad agire per conto del proprietario dell'app. Sei consapevole del fatto che l'abuso di questa impostazione potrebbe comportare la chiusura del tuo Account Google.

In qualità di sviluppatore di app, puoi indicare se vuoi che Google tratti i tuoi contenuti come rivolti ai minori quando esegui una richiesta di annuncio. Se indichi che vuoi che Google tratti i tuoi contenuti come rivolti ai minori, adottiamo le misure necessarie per disattivare la pubblicità basata sugli interessi e gli annunci di remarketing per la richiesta di annuncio in questione.

Puoi applicare l'impostazione rivolta ai minori tramite setTagForChildDirectedTreatment():

  • Chiama setTagForChildDirectedTreatment con TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE per indicare che vuoi che i tuoi contenuti vengano trattati come rivolti ai minori ai fini del COPPA. In questo modo, viene impedita la trasmissione dell'identificatore pubblicità di Android (AAID).

  • Chiama setTagForChildDirectedTreatment con TAG_FOR_CHILD_DIRECTED_TREATMENT_FALSE per indicare che non vuoi che i tuoi contenuti vengano trattati come rivolti ai minori ai fini del COPPA.

  • Chiama setTagForChildDirectedTreatment con TAG_FOR_CHILD_DIRECTED_TREATMENT_UNSPECIFIED se non vuoi indicare come vuoi che i tuoi contenuti vengano trattati in relazione al COPPA nelle richieste di annunci.

L'esempio seguente indica che vuoi che i tuoi contenuti vengano trattati come rivolti ai minori ai fini del COPPA:

Kotlin

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

Java

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

Puoi contrassegnare le tue richieste di annuncio perché ricevano il trattamento previsto per gli utenti di età inferiore a quella del consenso digitale nello Spazio economico europeo (SEE). Questa funzionalità è pensata per facilitare il rispetto del Regolamento generale sulla protezione dei dati (GDPR). Potresti avere altri obblighi legali ai sensi del GDPR. Consulta le linee guida dell'Unione Europea e rivolgiti a un consulente legale. Gli strumenti di Google sono progettati per facilitare la conformità e non esonerano i publisher dagli obblighi stabiliti dalla legge. Scopri di più su come il GDPR influisce sui publisher.

Quando utilizzi questa funzionalità, nella richiesta di annuncio viene incluso un parametro Tag per utenti di età inferiore a quella del consenso digitale in Europa (TFUA). Questo parametro disattiva la pubblicità personalizzata, incluso il remarketing, per tutte le richieste di annuncio. Inoltre, vengono disattivate le richieste a fornitori di annunci di terze parti, come i pixel di misurazione annunci e gli ad server di terze parti.

Come per le impostazioni per i contenuti rivolti ai bambini, in RequestConfiguration.Builder esiste un metodo per impostare il parametro TFUA: setTagForUnderAgeOfConsent(), con le seguenti opzioni.

  • Chiama setTagForUnderAgeOfConsent() con TAG_FOR_UNDER_AGE_OF_CONSENT_TRUE per indicare che vuoi che la richiesta di annuncio riceva il trattamento previsto per gli utenti nello Spazio economico europeo (SEE) di età inferiore a quella del consenso digitale. In questo modo viene impedita anche la trasmissione dell'identificatore pubblicità di Android (AAID).

  • Chiama setTagForUnderAgeOfConsent() con TAG_FOR_UNDER_AGE_OF_CONSENT_FALSE per indicare che vuoi che la richiesta di annuncio non riceva il trattamento per gli utenti nello Spazio economico europeo (SEE) di età inferiore a quella del consenso digitale.

  • Chiama setTagForUnderAgeOfConsent() con TAG_FOR_UNDER_AGE_OF_CONSENT_UNSPECIFIED per indicare che non hai specificato se la richiesta di annuncio deve essere soggetta al trattamento per gli utenti nello Spazio economico europeo (SEE) al di sotto dell'età del consenso digitale.

Il seguente esempio indica che vuoi includere TFUA nelle tue richieste di annuncio:

Kotlin

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

Java

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

I tag per attivare l'impostazione rivolta ai minori e setTagForUnderAgeOfConsent() non devono essere entrambi impostati contemporaneamente su true. In caso di conflitto, l'impostazione rivolta ai minori ha la precedenza.

Filtro dei contenuti degli annunci

Per rispettare le norme relative agli annunci inappropriati di Google Play, che includono le offerte associate all'interno di un annuncio, tutti gli annunci e le offerte associate mostrati all'interno dell'app devono essere appropriati per la classificazione dei contenuti dell'app, anche se i contenuti sono conformi alle norme di Google Play.

Strumenti come la classificazione massima dei contenuti degli annunci possono aiutarti ad avere un maggiore controllo sui contenuti degli annunci mostrati agli utenti. Puoi impostare una classificazione massima dei contenuti per garantire la conformità alle norme della piattaforma.

Le app possono impostare una classificazione massima dei contenuti degli annunci per le loro richieste di annuncio utilizzando il metodo setMaxAdContentRating. Gli annunci AdMob restituiti quando questa opzione è configurata hanno una classificazione dei contenuti pari o inferiore a questo livello. I valori possibili per questo extra di rete si basano sulle classificazioni delle etichette dei contenuti digitali e devono essere una delle seguenti stringhe:

  • MAX_AD_CONTENT_RATING_G
  • MAX_AD_CONTENT_RATING_PG
  • MAX_AD_CONTENT_RATING_T
  • MAX_AD_CONTENT_RATING_MA

Il seguente codice configura un oggetto RequestConfiguration per specificare che i contenuti dell'annuncio restituiti devono corrispondere a una designazione di etichetta contenuti digitali non superiore a G:

Kotlin

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

Java

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

Scopri di più su come impostare la classificazione massima dei contenuti per ogni richiesta di annuncio.

Publisher Privacy Treatment (beta)

L'API Publisher Privacy Treatment (PPT) è uno strumento facoltativo che consente alle app di indicare se disattivare la personalizzazione degli annunci per tutte le richieste di annuncio utilizzando il metodo setPublisherPrivacyPersonalizationState(). Quando utilizzi questa funzionalità, un parametro Publisher Privacy Treatment (PPT) viene incluso in tutte le richieste di annunci future per il resto della sessione.

Per impostazione predefinita, le richieste di annunci a Google determinano la pubblicazione di annunci personalizzati. Il seguente codice disattiva la personalizzazione degli annunci per tutte le richieste di annunci:

Kotlin

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

Java

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

Richiesta di annuncio

L'oggetto AdManagerAdRequest raccoglie le informazioni di targeting da inviare con una richiesta di annuncio.

Aggiungere informazioni extra della rete

Le informazioni extra della rete sono dettagli aggiuntivi inviati con una richiesta di annuncio specifici per una singola origine annuncio.

Il seguente snippet di codice imposta una chiave di parametro aggiuntiva di collapsible con un valore di bottom su Google:

Kotlin

val extras = Bundle()
extras.putString("collapsible", "bottom")
val adRequest =
  AdRequest.Builder().addNetworkExtrasBundle(AdMobAdapter::class.java, extras).build()
adView.loadAd(adRequest)

Java

Bundle extras = new Bundle();
extras.putString("collapsible", "bottom");
AdRequest adRequest =
    new AdRequest.Builder().addNetworkExtrasBundle(AdMobAdapter.class, extras).build();
adView.loadAd(adRequest);

Targeting personalizzato

Puoi trasmettere coppie chiave-valore personalizzate per scegliere come target le campagne Google Ad Manager (elementi pubblicitari). L'esempio seguente trasmette una coppia chiave-valore personalizzata in una richiesta di annuncio:

Kotlin

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

Java

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

Puoi passare più valori per una chiave come elenco di stringhe. Ad esempio, per scegliere come target persone di circa 25 anni anziché solo di 25 anni.

Kotlin

.addCustomTargeting("age", listOf("24", "25", "26"))

Java

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

Consulta l'esempio di targeting personalizzato di Ad Manager per un'implementazione del targeting personalizzato nell'app Android API Demo.

Esclusioni di categoria

Puoi aggiungere un livello di esclusione di categorie a livello di slot a una richiesta utilizzando il metodo addCategoryExclusion():

Kotlin

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

Java

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

Dai un'occhiata all'esempio di esclusioni di categorie di Ad Manager per un'implementazione delle esclusioni di categorie nell'app demo dell'API Android.

Identificatori forniti dal publisher

Puoi impostare un identificatore fornito dal publisher (PPID) da utilizzare per la quota limite, la segmentazione e il targeting del pubblico, la rotazione degli annunci sequenziale e altri controlli di pubblicazione degli annunci basati sul pubblico su tutti i dispositivi.

Ecco un esempio di impostazione del PPID:

Kotlin

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

Java

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

Consulta l'esempio di PPID di Ad Manager per un'implementazione degli identificatori forniti dal publisher (PPID) nell'app demo dell'API Android.

Indicatori forniti dal publisher

Puoi inviare dati contestuali e sui segmenti di pubblico come indicatori forniti dal publisher (PPS) nelle richieste di annuncio. Con PPS, puoi utilizzare i dati degli utenti per migliorare la monetizzazione programmatica comunicando le caratteristiche del tuo segmento di pubblico agli offerenti in tutti i tipi di transazione, utilizzando tassonomie standard, senza la necessità di condividere gli identificatori utente. Le caratteristiche del tuo pubblico possono includere dati comportamentali e basati sugli interessi (Tassonomia del pubblico IAB 1.1) e dati contestuali (Tassonomia dei contenuti IAB 2.2).

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 =
  AdManagerAdRequest.Builder().addNetworkExtrasBundle(AdMobAdapter::class.java, extras).build()

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", new ArrayList<>(Arrays.asList(6, 284)));
// Set the content to sedan, station wagon and SUV automotive values.
extras.putIntegerArrayList("IAB_CONTENT_2_2", new ArrayList<>(Arrays.asList(4, 5, 6)));

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

URL contenuti

Per fornire un URL dei contenuti per gli annunci con targeting dei contenuti e la sicurezza del brand, aggiungi quanto segue:

Kotlin

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

Java

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

Sicurezza del brand (beta)

Le applicazioni che mostrano contenuti dinamici destinati a segmenti di pubblico diversi possono fornire un breve elenco di URL:

Kotlin

val urls =
  mutableListOf(
    "https://www.mycontenturl1.com",
    "https://www.mycontenturl2.com",
    "https://www.mycontenturl3.com",
    "https://www.mycontenturl4.com",
  )

val requestWithContent = AdManagerAdRequest.Builder().setNeighboringContentUrls(urls).build()

Java

List<String> urls =
    Arrays.asList(
        "https://www.mycontenturl1.com",
        "https://www.mycontenturl2.com",
        "https://www.mycontenturl3.com",
        "https://www.mycontenturl4.com");

AdManagerAdRequest requestWithContent =
    new AdManagerAdRequest.Builder().setNeighboringContentUrls(urls).build();

.setNeighboringContentUrls() differisce da .setContentUrl() in quanto viene utilizzata solo per la sicurezza del brand.