Kierowanie

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 API Demo

Warunek wstępny

Zanim przejdziesz dalej, skonfiguruj Google Mobile Ads SDK (Legacy).

RequestConfiguration

RequestConfiguration zbiera informacje o kierowaniu stosowane globalnie do każdego żądania reklamy. Dostępne tagi kierowania znajdziesz w RequestConfiguration.Builder dokumentacji.

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

Kotlin

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

Java

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

Aby mieć pewność, że wszystkie żądania reklamy będą stosować zmiany konfiguracji żądania, ustaw konfigurację żądania, zanim zainicjujesz Google Mobile Ads SDK (Legacy).

Ustawianie ograniczeń wiekowych

Aby ułatwić Ci zachowanie zgodności z obowiązującymi przepisami dotyczącymi prywatności dzieci i nastolatków, Google Mobile Ads SDK (Legacy) udostępnia ustawienie dotyczące ograniczeń wiekowych. Ustawienie to pozwala określić, czy Google Mobile Ads SDK (Legacy) ma stosować określone zabezpieczenia wyświetlania reklam w przypadku dzieci, nastolatków lub użytkowników w nieokreślonym wieku.

Ograniczenia wiekowe możesz ustawić za pomocą metody setAgeRestrictedTreatment() w interfejsie RequestConfiguration.Builder API.

Poniższy przykład wskazuje, że żądania reklamy powinny być traktowane jako treści skierowane do dzieci:

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

Aby wskazać, że treści mają być traktowane jako skierowane do nastolatków lub użytkowników w nieokreślonym wieku, zastąp ustawienie CHILD jednym z tych ustawień:

  • TEEN
  • UNSPECIFIED

Gdy używasz tego ustawienia, Google Mobile Ads SDK (Legacy) dodaje do żądań reklamy parametr tfat. Skonsultuj się z prawnikiem, aby określić ustawienia dotyczące traktowania użytkowników z uwzględnieniem wieku zgodnie z obowiązującymi Cię wymogami prawnymi i regulacyjnymi. Więcej informacji znajdziesz w artykule Tagowanie żądania reklamy jako wymagającego traktowania z uwzględnieniem wieku.

Migracja do ustawienia dotyczącego ograniczeń wiekowych z ustawień TFCD i TFUA

Ustawienie dotyczące ograniczeń wiekowych zastępuje wycofane ustawienia .setTagForChildDirectedTreatment() (TFCD) i .setTagForUnderAgeOfConsent() (TFUA).

W tabeli poniżej znajdziesz ustawienia TFCD i TFUA oraz ich odpowiedniki w ustawieniu dotyczącym ograniczeń wiekowych:

TFCD

TFCD Ograniczenia wiekowe
TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE AgeRestrictedTreatment.CHILD
TAG_FOR_CHILD_DIRECTED_TREATMENT_FALSE AgeRestrictedTreatment.UNSPECIFIED
TAG_FOR_CHILD_DIRECTED_TREATMENT_UNSPECIFIED AgeRestrictedTreatment.UNSPECIFIED
Brak przypisanej wartości .setTagForChildDirectedTreatment() AgeRestrictedTreatment.UNSPECIFIED
Brak odpowiednika AgeRestrictedTreatment.TEEN

TFUA

TFUA Ograniczenia wiekowe
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
Brak przypisanej wartości .setTagForUnderAgeOfConsent() AgeRestrictedTreatment.UNSPECIFIED
Brak odpowiednika AgeRestrictedTreatment.TEEN

Informacje o interakcjach ustawienia dotyczącego ograniczeń wiekowych z ustawieniami TFCD i TFUA

Jeśli ustawisz ustawienie dotyczące ograniczeń wiekowych oraz ustawienia TFCD lub TFUA, Google zastosuje najbardziej zachowawcze traktowanie.

Ustawienie dotyczące treści skierowanych do dzieci

Na potrzeby ustawy o ochronie prywatności dzieci w internecie (COPPA) istnieje ustawienie „tagowanie treści pod kątem wieku odbiorców”. Ustawiając ten tag, potwierdzasz, że to powiadomienie jest poprawne i że posiadasz uprawnienia do działania w imieniu właściciela aplikacji. Rozumiesz, że nadużywanie tego ustawienia może być przyczyną zamknięcia 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 Google traktowało Twoje treści jako skierowane do dzieci, wyłączymy reklamy oparte na zainteresowaniach i reklamy remarketingowe w przypadku tego żądania reklamy.

Ustawienie dotyczące treści skierowanych do dzieci możesz zastosować za pomocą setTagForChildDirectedTreatment():

  • Wywołaj metodę setTagForChildDirectedTreatment z wartością TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE, aby wskazać, że chcesz, aby Twoje treści były 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 metodę setTagForChildDirectedTreatment z wartością 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 metodę setTagForChildDirectedTreatment z wartością TAG_FOR_CHILD_DIRECTED_TREATMENT_UNSPECIFIED, jeśli nie chcesz wskazywać, jak mają być traktowane Twoje treści w żądaniach reklamy w odniesieniu do ustawy COPPA.

Poniższy przykład wskazuje, że chcesz, aby Twoje treści były traktowane jako skierowane do dzieci na potrzeby ustawy 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);

Możesz oznaczyć swoje żądania reklamy, by 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. Dodaliśmy tę funkcję, by ułatwić spełnianie wymogów Ogólnego rozporządzenia 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 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. Dowiedz się więcej o tym, jak RODO wpływa na wydawców.

Jeśli użyjesz tej funkcji, do żądania reklamy dodamy parametr TFUA (Tag For Users under the Age of Consent in Europe – tag stosowany w przypadku użytkowników z Europy, którzy nie osiągnęli wieku samodzielnego wyrażania zgody). Ten parametr wyłącza reklamy spersonalizowane, w tym remarketingowe, w przypadku wszystkich żądań reklamy. Uniemożliwia również przesł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 skierowanych do dzieci, w RequestConfiguration.Builder dostępna jest metoda ustawiania parametru TFUA: setTagForUnderAgeOfConsent(), z tymi opcjami:

  • Wywołaj metodę setTagForUnderAgeOfConsent() z wartością TAG_FOR_UNDER_AGE_OF_CONSENT_TRUE, aby wskazać, że chcesz, aby żądanie reklamy było 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 też przesyłaniu identyfikatora wyświetlania reklam na urządzeniach z Androidem (AAID).

  • Wywołaj metodę setTagForUnderAgeOfConsent() z wartością TAG_FOR_UNDER_AGE_OF_CONSENT_FALSE, aby wskazać, że nie chcesz, aby żądanie reklamy było 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 metodę setTagForUnderAgeOfConsent() z wartością TAG_FOR_UNDER_AGE_OF_CONSENT_UNSPECIFIED, aby wskazać, że nie masz pewności, czy żą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.

Poniższy przykład wskazuje, że chcesz, aby parametr TFUA był uwzględniany w Twoich żą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 dzieci i setTagForUnderAgeOfConsent() nie powinny mieć jednocześnie wartości true. Jeśli tak jest, ustawienie dotyczące treści 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 Twojej 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 ułatwić zachowanie zgodności z zasadami platformy, możesz ustawić maksymalną ocenę treści.

Aplikacje mogą ustawić maksymalną ocenę treści reklam w swoich żądaniach reklamy za pomocą metody setMaxAdContentRating. Reklamy AdMob zwracane po skonfigurowaniu tej opcji mają ocenę treści na tym poziomie lub niższą. Dostępne wartości tego dodatku do sieci są oparte na klasyfikacjach 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 reklam powinny odpowiadać etykiecie treści cyfrowych nie wyższej 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 ustawianiu maksymalnej oceny treści dla każdego żądania reklamy.

Publisher Privacy Treatment API (beta)

Publisher Privacy Treatment (PPT) API to opcjonalne narzędzie, które umożliwia aplikacjom określenie, czy wyłączyć personalizację reklam w przypadku wszystkich żądań reklamy za pomocą metody setPublisherPrivacyPersonalizationState(). Gdy używasz tej funkcji, do wszystkich przyszłych żądań reklamy w danej sesji dodawany jest parametr Publisher Privacy Treatment (PPT).

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

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

Żądanie reklamy

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

Dodawanie dodatków do sieci

Dodatki do sieci to dodatkowe informacje wysyłane z żądaniem reklamy, które są specyficzne dla danego źródła reklam.

Ten fragment kodu ustawia dodatkowy parametr collapsible z wartością bottom w 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);

Kierowanie niestandardowe

Możesz przekazywać niestandardowe pary klucz-wartość, aby kierować reklamy na kampanie (elementy zamówienia) Google Ad Managera. Ten przykład przekazuje niestandardową parę klucz-wartość w żądaniu reklamy:

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 przekazywać wiele wartości klucza jako listę ciągów znaków. Na przykład, aby kierować reklamy na osoby w wieku 25–29 lat, a nie tylko na 25-latków.

Kotlin

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

Java

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

Aby zobaczyć implementację kierowania niestandardowego w aplikacji Android API Demo, zapoznaj się z przykładem kierowania niestandardowego w Ad Managerze.

Wykluczenia kategorii

Aby dodać do żądania wykluczenie kategorii na poziomie boksu reklamowego, 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();

Aby zobaczyć implementację wykluczeń kategorii w aplikacji Android API Demo, zapoznaj się z przykładem wykluczeń kategorii w Ad Managerze.

Identyfikatory podawane przez wydawcę

Możesz ustawić identyfikator podawany przez wydawcę (PPID) do użycia 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();

Aby zobaczyć implementację identyfikatorów podawanych przez wydawcę (PPID) w aplikacji Android API Demo, zapoznaj się z przykładem identyfikatora PPID w Ad Managerze.

Sygnały dostarczane przez wydawcę

W żądaniach reklamy możesz wysyłać dane o odbiorcach i dane kontekstowe jako sygnały dostarczane przez wydawcę. Dzięki sygnałom dostarczanym przez wydawcę możesz używać danych o użytkownikach do zwiększania przychodów z reklam programowych, przekazując charakterystykę odbiorców licytującym we wszystkich typach transakcjiza pomocą standardowych taksonomii bez konieczności udostępniania identyfikatorów użytkowników. Charakterystyka odbiorców może obejmować dane behawioralne i dane oparte na zainteresowaniach (taksonomia odbiorców IAB 1.1) oraz dane kontekstowe (taksonomia treści 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 treści

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

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, które wyświetlają treści dynamiczne 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

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

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