Kierowanie

Wybierz platformę: Android iOS Unity Flutter

Z tego przewodnika dowiesz się, jak przekazywać informacje o kierowaniu do pakietu SDK do reklam mobilnych Google.

Aby zobaczyć działający przykład, pobierz aplikację Android API Demo.

Pobierz wersję demonstracyjną interfejsu API

Warunek wstępny

RequestConfiguration

RequestConfiguration zbiera informacje o kierowaniu stosowane globalnie do każdego żądania reklamy. Listę dostępnych tagów kierowania znajdziesz w RequestConfiguration.Builderdokumentacji.

Aby zaktualizować konfigurację żądania, pobierz narzędzie do tworzenia z dotychczasowej konfiguracji, wprowadź odpowiednie zmiany i ustaw je w ten sposób:

Kotlin

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

Java

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

Aby mieć pewność, że wszystkie żądania reklam będą uwzględniać zmiany w konfiguracji żądań, ustaw konfigurację żądań przed zainicjowaniem pakietu SDK do reklam mobilnych.

Ustawienie dotyczące treści skierowanych do dzieci

Na potrzeby ustawy o ochronie prywatności dzieci w internecie (COPPA) istnieje ustawienie „Oznacz jako skierowane do dzieci”. Ustawiając ten tag, potwierdzasz, że to zgłoszenie jest prawidłowe i masz uprawnienia do działania w imieniu właściciela aplikacji. Rozumiesz, że nadużycie tego ustawienia może skutkować zamknięciem Twojego konta Google.

Deweloper aplikacji może wskazać w żądaniu reklamy, czy Google ma traktować treści w tej aplikacji jako skierowane do dzieci. Jeśli wskażesz, że chcesz, aby Twoje treści były traktowane jako skierowane do dzieci, podejmiemy działania mające na celu wyłączenie w tym żądaniu reklamy opartej na zainteresowaniach i reklamy remarketingowej.

Ustawienie „Treści skierowane do dzieci” możesz zastosować w tych miejscach:setTagForChildDirectedTreatment()

  • Wywołaj funkcję setTagForChildDirectedTreatment z parametrem TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE, aby wskazać, że treści mają być traktowane jako skierowane do dzieci na potrzeby ustawy COPPA. Zapobiega to przesyłaniu identyfikatora wyświetlania reklam na urządzeniach z Androidem (AAID).

  • Wywołaj funkcję setTagForChildDirectedTreatment z parametrem TAG_FOR_CHILD_DIRECTED_TREATMENT_FALSE, aby wskazać, że nie chcesz, aby Twoje treści były traktowane jako skierowane do dzieci na potrzeby ustawy COPPA.

  • Wywołaj funkcję setTagForChildDirectedTreatment z parametrem TAG_FOR_CHILD_DIRECTED_TREATMENT_UNSPECIFIED, jeśli nie chcesz określać, w jaki sposób mają być traktowane Twoje treści w żądaniach reklam w kontekście ustawy COPPA.

Poniższy przykład wskazuje, że na potrzeby ustawy COPPA chcesz, aby Twoje treści były traktowane jako skierowane do dzieci:

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);

Możesz oznaczyć swoje żądania reklamy, aby były traktowane jako dotyczące użytkowników z Europejskiego Obszaru Gospodarczego (EOG), którzy nie osiągnęli wieku samodzielnego wyrażania zgody. Ta funkcja ma na celu ułatwienie zachowania zgodności z Ogólnym rozporządzeniem o ochronie danych (RODO). Pamiętaj, że zgodnie z RODO możesz mieć także inne zobowiązania. Zapoznaj się ze wskazówkami Unii Europejskiej i skonsultuj się ze swoim radcą prawnym. Pamiętaj, że narzędzia Google pomagają w przestrzeganiu przepisów, ale nie zwalniają żadnego wydawcy z jego zobowiązań wobec prawa. Więcej informacji o tym, jak RODO wpływa na działalność wydawców

Jeśli użyjesz tej funkcji, do żądania reklamy dodamy parametr Tag For Users under the Age of Consent in Europe (TFUA). Wyłącza on reklamy spersonalizowane, w tym remarketingowe, w przypadku wszystkich żądań reklamy. Uniemożliwia też przesyłanie żądań do zewnętrznych dostawców reklam – dotyczy to np. pikseli śledzących reklamy lub serwerów reklamowych firm zewnętrznych.

Podobnie jak w przypadku ustawień dotyczących treści kierowanych do dzieci, istnieje metoda ustawiania parametru TFUA:RequestConfiguration.BuildersetTagForUnderAgeOfConsent() z tymi opcjami:

  • Wywołaj funkcję setTagForUnderAgeOfConsent() z parametrem TAG_FOR_UNDER_AGE_OF_CONSENT_TRUE, aby wskazać, że żądanie reklamy ma być traktowane jako dotyczące użytkowników z Europejskiego Obszaru Gospodarczego (EOG), którzy nie osiągnęli wieku samodzielnego wyrażania zgody. Zapobiega to również przesyłaniu identyfikatora wyświetlania reklam na urządzeniach z Androidem (AAID).

  • Wywołaj funkcję setTagForUnderAgeOfConsent() z parametrem TAG_FOR_UNDER_AGE_OF_CONSENT_FALSE, aby wskazać, że żądanie reklamy nie ma być traktowane jako dotyczące użytkowników z Europejskiego Obszaru Gospodarczego (EOG), którzy nie osiągnęli wieku samodzielnego wyrażania zgody.

  • Wywołaj funkcję setTagForUnderAgeOfConsent() z parametrem TAG_FOR_UNDER_AGE_OF_CONSENT_UNSPECIFIED, aby wskazać, że nie określono, czy żądanie reklamy ma być traktowane jako skierowane do użytkowników z Europejskiego Obszaru Gospodarczego (EOG), którzy nie osiągnęli wieku samodzielnego wyrażania zgody.

Poniższy przykład pokazuje, że chcesz, aby parametr TFUA był uwzględniany w żądaniach reklamy:

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);

Tagi umożliwiające włączenie ustawienia dotyczącego treści skierowanych do dziecisetTagForUnderAgeOfConsent() nie powinny mieć jednocześnie wartości true. Jeśli tak jest, ustawienie dotyczące aplikacji skierowanych do dzieci ma pierwszeństwo.

Filtrowanie treści reklam

Aby zachować zgodność z zasadami Google Play dotyczącymi nieodpowiednich reklam, które obejmują powiązane oferty w reklamie, wszystkie reklamy i powiązane z nimi oferty wyświetlane w Twojej aplikacji muszą być odpowiednie do oceny treści aplikacji, nawet jeśli sama treść jest pod innymi względami zgodna z zasadami Google Play.

Narzędzia takie jak maksymalna ocena treści reklam pozwalają lepiej kontrolować zawartość reklam wyświetlanych użytkownikom. Aby zachować zgodność z zasadami platformy, możesz ustawić maksymalną ocenę treści.

Aplikacje mogą ustawiać maksymalną ocenę treści reklam w przypadku żądań reklam za pomocą metody setMaxAdContentRating. Reklamy AdMob zwracane po skonfigurowaniu tej opcji mają ocenę treści na tym poziomie lub niższą. Możliwe wartości tego dodatkowego parametru sieci zależą od klasyfikacji etykiet treści cyfrowych i muszą być jednym z tych ciągów znaków:

  • MAX_AD_CONTENT_RATING_G
  • MAX_AD_CONTENT_RATING_PG
  • MAX_AD_CONTENT_RATING_T
  • MAX_AD_CONTENT_RATING_MA

Ten kod konfiguruje obiekt RequestConfiguration, aby określić, że zwracane treści reklamy powinny odpowiadać oznaczeniu etykiety treści cyfrowych nie wyższemu niż 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);

Dowiedz się więcej o określaniu maksymalnej oceny treści dla każdego żądania reklamy.

Publisher Privacy Treatment API (beta)

Interfejs Publisher Privacy Treatment (PPT) to opcjonalne narzędzie, które umożliwia aplikacjom określanie, czy wyłączyć personalizację reklam w przypadku wszystkich żądań reklam za pomocą metody setPublisherPrivacyPersonalizationState(). Gdy używasz tej funkcji, w żądaniach reklam wysyłanych w dalszej części sesji uwzględniany jest parametr Publisher Privacy Treatment (PPT).

Domyślnie żądania reklam wysyłane do Google powodują wyświetlanie reklam spersonalizowanych. Poniższy kod wyłącza personalizację reklam w przypadku wszystkich żądań reklamy:

Kotlin

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

Java

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

Żądanie reklamy

Obiekt AdManagerAdRequest zbiera informacje o kierowaniu, które mają być wysyłane z żądaniem reklamy.

Dodatki do sieci

Dodatkowe informacje o sieci to dodatkowe szczegóły wysyłane wraz z żądaniem reklamy, które są specyficzne dla jednego źródła reklam.

Ten fragment kodu ustawia w Google dodatkowy klucz parametru collapsible z wartością bottom:

Kotlin

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

Java

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

Kierowanie niestandardowe

Możesz przekazywać niestandardowe pary klucz-wartość, aby kierować kampanie (elementy zamówienia) Google Ad Managera. W tym przykładzie w żądaniu reklamy przekazywana jest niestandardowa para klucz-wartość:

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();

Możesz przekazać wiele wartości klucza jako listę ciągów znaków. Na przykład możesz kierować reklamy na osoby w wieku około 25 lat, a nie tylko na 25-latków.

.addCustomTargeting("age", Arrays.asList("24", "25", "26"))
Zapoznaj się z przykładem kierowania niestandardowego w usłudze Ad Manager, aby zobaczyć implementację kierowania niestandardowego w aplikacji demonstracyjnej interfejsu Android API.

Wykluczenia kategorii

Aby dodać do żądania poziom wykluczenia kategorii na poziomie slotu, użyj metody 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();

Zapoznaj się z przykładem wykluczeń kategorii w usłudze Ad Manager, aby zobaczyć implementację wykluczeń kategorii w aplikacji demonstracyjnej interfejsu API Androida.

Identyfikatory podawane przez wydawcę

Możesz ustawić identyfikator podawany przez wydawcę (PPID) do wykorzystania na potrzeby ograniczenia liczby wyświetleń, segmentacji odbiorców, kierowania, sekwencyjnej rotacji reklam i innych funkcji sterujących wyświetlaniem reklam w zależności od odbiorców na różnych urządzeniach.

Oto przykład ustawiania identyfikatora PPID:

Kotlin

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

Java

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

Zapoznaj się z przykładem identyfikatorów PPID w Ad Managerze, aby zobaczyć implementację identyfikatorów podawanych przez wydawcę (PPID) w aplikacji demonstracyjnej interfejsu API na Androida.

Sygnały dostarczane przez wydawcę

W żądaniach reklamy możesz wysyłać dane o odbiorcach i dane kontekstowe jako sygnały dostarczane przez wydawcę. Sygnały dostarczane przez wydawcę umożliwiają Ci wykorzystywanie danych o użytkownikach do poprawy zarabiania w sposób zautomatyzowany poprzez przekazywanie charakterystyki odbiorców podmiotom ustalającym stawki we wszystkich rodzajach transakcji z użyciem standardowych taksonomii bez konieczności udostępniania identyfikatorów użytkowników. Charakterystyka odbiorców może obejmować dane związane z zachowaniem i zainteresowaniami (taksonomia odbiorców IAB w wersji 1.1) oraz dane kontekstowe (taksonomia treści IAB w wersji 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", 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();

URL treści

Aby podać adres URL treści na potrzeby reklam kierowanych na treść i bezpieczeństwa marki, dodaj:

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();

Bezpieczeństwo marki (beta)

Aplikacje wyświetlające dynamiczne treści przeznaczone dla różnych odbiorców mogą podać krótką listę adresów 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

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();

.setNeighboringContentUrls() różni się od .setContentUrl() tym, że jest używane tylko do ochrony marki.