Kierowanie

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

Warunek wstępny

Zanim przejdziesz dalej, skonfiguruj GMA Next-Gen SDK.

RequestConfiguration

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

Utwórz obiekt RequestConfiguration z tagami kierowania, których potrzebujesz, za pomocą jego konstruktora, a następnie ustaw konfigurację, wywołując MobileAds.setRequestConfiguration().

Kotlin

val requestConfiguration = RequestConfiguration
  .Builder()
  // Set your targeting tags.
  .setTagForChildDirectedTreatment(RequestConfiguration.TagForChildDirectedTreatment.TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE)
  .build()

MobileAds.setRequestConfiguration(requestConfiguration)

Java

RequestConfiguration requestConfiguration = new RequestConfiguration
  .Builder()
  // Set your targeting tags.
  .setTagForChildDirectedTreatment(TagForChildDirectedTreatment.TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE)
  .build();

MobileAds.setRequestConfiguration(requestConfiguration);

Aby zastosować tagi kierowania z pierwszego żądania reklamy, podaj konfigurację żądania podczas inicjowania pakietu SDK:

Kotlin

val requestConfiguration = RequestConfiguration
  .Builder()
  // Set your targeting tags.
  .setTagForChildDirectedTreatment(RequestConfiguration.TagForChildDirectedTreatment.TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE)
  .build()

CoroutineScope(Dispatchers.IO).launch {
  // Initialize GMA Next-Gen SDK on a background thread.
  MobileAds.initialize(
    this@MainActivity,
    InitializationConfig
      // Sample AdMob app ID: ca-app-pub-3940256099942544~3347511713
      .Builder("SAMPLE_APP_ID")
      .setRequestConfiguration(requestConfiguration)
      .build()
  ) {
    // Adapter initialization is complete.
  }
  // Other methods on MobileAds can now be called.
}

Java

RequestConfiguration requestConfiguration = new RequestConfiguration
    .Builder()
    // Set your targeting tags.
    .setTagForChildDirectedTreatment(TagForChildDirectedTreatment.TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE)
    .build();

new Thread(
    () -> {
      // Initialize GMA Next-Gen SDK on a background thread.
      MobileAds.initialize(
          this,
          // Sample AdMob app ID: ca-app-pub-3940256099942544~3347511713
          new InitializationConfig
              .Builder("SAMPLE_APP_ID")
              .setRequestConfiguration(requestConfiguration)
              .build(),
          initializationStatus -> {
            // Adapter initialization is complete.
          });
      // Other methods on MobileAds can now be called.
    })
    .start();

Ustawianie traktowania treści z uwzględnieniem wieku

Aby ułatwić Ci przestrzeganie obowiązujących przepisów dotyczących prywatności dzieci i nastolatków, związanych z dziećmi i nastolatkami, GMA Next-Gen SDK udostępnia ustawienie traktowania treści z uwzględnieniem wieku. Ustawienie traktowania treści z uwzględnieniem wieku pozwala określić, czy GMA Next-Gen SDK ma stosować określone zabezpieczenia dotyczące wyświetlania reklam dzieciom lub nastolatkom. Gdy używasz tego ustawienia, GMA Next-Gen SDK dodaje do żądań reklamy parametr tfat. Skonsultuj się z prawnikiem, aby określić odpowiednie traktowanie treści z uwzględnieniem wieku użytkowników zgodnie z obowiązującymi Cię wymogami prawnymi i regulacyjnymi. Więcej informacji znajdziesz w artykule Tagowanie żądania reklamy z aplikacji pod kątem ograniczenia wiekowego.

Traktowanie treści z uwzględnieniem wieku możesz ustawić za pomocą metody setAgeRestrictedTreatment() w interfejsie API RequestConfiguration.Builder.

Ustawianie traktowania treści jako skierowanych do dzieci

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

Kotlin

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

Java

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

Ustawianie traktowania treści jako skierowanych do nastolatków

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

Kotlin

val requestConfiguration =
  RequestConfiguration.Builder()
    // Indicate that ad requests should have teenage treatment.
    .setAgeRestrictedTreatment(AgeRestrictedTreatment.TEEN)
    .build()
MobileAds.setRequestConfiguration(requestConfiguration)

Java

RequestConfiguration requestConfiguration =
    new RequestConfiguration.Builder()
        // Indicate that ad requests should have teenage treatment.
        .setAgeRestrictedTreatment(AgeRestrictedTreatment.TEEN)
        .build();
MobileAds.setRequestConfiguration(requestConfiguration);

Ustawianie braku traktowania treści jako skierowanych do odbiorców w określonym wieku

Poniższy przykład wskazuje, że żądania reklamy nie powinny być traktowane jako treści skierowane do odbiorców w określonym wieku:

Kotlin

val requestConfiguration =
  RequestConfiguration.Builder()
    // Indicate that ad requests should have unspecified age treatment.
    .setAgeRestrictedTreatment(AgeRestrictedTreatment.UNSPECIFIED)
    .build()
MobileAds.setRequestConfiguration(requestConfiguration)

Java

RequestConfiguration requestConfiguration =
    new RequestConfiguration.Builder()
        // Indicate that ad requests should have unspecified age treatment.
        .setAgeRestrictedTreatment(AgeRestrictedTreatment.UNSPECIFIED)
        .build();
MobileAds.setRequestConfiguration(requestConfiguration);

Migracja z TFCD i TFUA do traktowania treści z uwzględnieniem wieku

Ustawienie traktowania treści z uwzględnieniem wieku zastępuje wycofane ustawienia .setTagForChildDirectedTreatment() (TFCD) i .setTagForUnderAgeOfConsent() (TFUA).

W tabeli poniżej znajdziesz ustawienia TFCD i TFUA oraz ich odpowiedniki w zakresie traktowania treści z uwzględnieniem wieku:

TFCD

TFCD Traktowanie treści z uwzględnieniem wieku
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 Traktowanie treści z uwzględnieniem wieku
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 traktowania treści z uwzględnieniem wieku z TFCD i TFUA

Jeśli ustawisz ustawienie dotyczące traktowania ze względu na wiek oraz ustawienia TFCD lub TFUA, Google zastosuje najbardziej zachowawcze traktowanie.

Ustawienie „Skierowana do dzieci”

Na potrzeby ustawy o ochronie prywatności dzieci w internecie (COPPA) istnieje ustawienie „Tagowanie treści jako skierowanych do dzieci”. 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, podejmiemy działania, aby wyłączyć reklamy oparte na zainteresowaniach i reklamy remarketingowe w przypadku tego żądania reklamy.

Ustawienie „Skierowana do dzieci” możesz zastosować za pomocą metody 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. Uniemożliwia to przesyłanie identyfikatora reklamowego Androida (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 = RequestConfiguration
  .Builder()
  .setTagForChildDirectedTreatment(RequestConfiguration.TagForChildDirectedTreatment.TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE)
  .build()

MobileAds.setRequestConfiguration(requestConfiguration)

Java

RequestConfiguration requestConfiguration = new RequestConfiguration
  .Builder()
  .setTagForChildDirectedTreatment(TagForChildDirectedTreatment.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 świadomego wyrażenia 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. 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 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 świadomego wyrażenia zgody). Ten parametr wyłącza reklamy spersonalizowane, w tym remarketingowe, w przypadku wszystkich żądań reklamy. Uniemożliwia również 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ń „Skierowana 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 świadomego wyrażania zgody. Uniemożliwia to też przesyłanie identyfikatora reklamowego Androida (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 świadomego wyrażenia zgody.

  • Wywołaj metodę setTagForUnderAgeOfConsent() z wartością TAG_FOR_UNDER_AGE_OF_CONSENT_UNSPECIFIED, aby wskazać, że nie określono, czy żądanie reklamy ma być traktowane jako dotyczące użytkowników z Europejskiego Obszaru Gospodarczego (EOG), którzy nie osiągnęli wieku świadomego wyrażenia zgody.

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

Kotlin

val requestConfiguration = RequestConfiguration
  .Builder()
  .setTagForUnderAgeOfConsent(RequestConfiguration.TagForUnderAgeOfConsent.TAG_FOR_UNDER_AGE_OF_CONSENT_TRUE)
  .build()

MobileAds.setRequestConfiguration(requestConfiguration)

Java

RequestConfiguration requestConfiguration = new RequestConfiguration
  .Builder()
  .setTagForUnderAgeOfConsent(TagForUnderAgeOfConsent.TAG_FOR_UNDER_AGE_OF_CONSENT_TRUE)
  .build();

MobileAds.setRequestConfiguration(requestConfiguration);

Tagi umożliwiające włączenie ustawienia Skierowana do dzieci i setTagForUnderAgeOfConsent() nie powinny mieć jednocześnie wartości true. Jeśli tak jest, ustawienie „Skierowana 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 zachować zgodność z zasadami platformy, możesz ustawić maksymalną ocenę treści.

Aplikacje mogą ustawić maksymalną ocenę treści reklam w przypadku żądań 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 dodatkowego parametru sieci są oparte na klasyfikacjach oznaczeń treści cyfrowych i muszą być jednym z tych ciągów:

  • MAX_AD_CONTENT_RATING_G
  • MAX_AD_CONTENT_RATING_PG
  • MAX_AD_CONTENT_RATING_T
  • MAX_AD_CONTENT_RATING_MA

Poniższy kod konfiguruje obiekt RequestConfiguration, aby określić, że zwracane treści reklam powinny odpowiadać oznaczeniu treści cyfrowych nie wyższemu niż G:

Kotlin

val requestConfiguration = RequestConfiguration
  .Builder()
  .setMaxAdContentRating(RequestConfiguration.MaxAdContentRating.MAX_AD_CONTENT_RATING_G)
  .build()

MobileAds.setRequestConfiguration(requestConfiguration)

Java

RequestConfiguration requestConfiguration = new RequestConfiguration
  .Builder()
  .setMaxAdContentRating(MaxAdContentRating.MAX_AD_CONTENT_RATING_G)
  .build();

MobileAds.setRequestConfiguration(requestConfiguration);

Więcej informacji:

Publisher Privacy Treatment API (beta)

Publisher Privacy Treatment(PPT) API to opcjonalne narzędzie, które pozwala aplikacjom określić, 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. Poniższy kod wyłącza personalizację reklam w przypadku wszystkich żądań reklamy:

Kotlin

val requestConfiguration = RequestConfiguration
  .Builder()
  .setPublisherPrivacyPersonalizationState(RequestConfiguration.PublisherPrivacyPersonalizationState.DISABLED)
  .build()

MobileAds.setRequestConfiguration(requestConfiguration)

Java

RequestConfiguration requestConfiguration = new RequestConfiguration
  .Builder()
  .setPublisherPrivacyPersonalizationState(RequestConfiguration.PublisherPrivacyPersonalizationState.DISABLED)
  .build();

MobileAds.setRequestConfiguration(requestConfiguration);

Żądanie reklamy

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

Dodawanie dodatkowych informacji wysyłanych z żądaniem reklamy

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

Poniższy fragment kodu ustawia dodatkowy parametr sieci o kluczu collapsible i wartości bottom w Google:

Kotlin

val extras = Bundle()
extras.putString("collapsible", "bottom")
val adRequest =
  NativeAdRequest.Builder("AD_UNIT_ID", listOf(NativeAd.NativeAdType.NATIVE))
    .setGoogleExtrasBundle(extras)
    .build()
NativeAdLoader.load(adRequest, adCallback)

Java

Bundle extras = new Bundle();
extras.putString("collapsible", "bottom");
NativeAdRequest adRequest =
  new NativeAdRequest.Builder("AD_UNIT_ID", Arrays.asList(NativeAd.NativeAdType.NATIVE))
    .setGoogleExtrasBundle(extras)
    .build();
NativeAdLoader.load(adRequest, adCallback);