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.Warunek wstępny
Zanim przejdziesz dalej, skonfiguruj Google Mobile Ads SDK.
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 aktualizacje 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.
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, Google Mobile Ads SDK udostępnia ustawienie traktowania treści z uwzględnieniem wieku. Ustawienie
traktowania treści z uwzględnieniem wieku pozwala określić, czy Google Mobile Ads SDK ma stosować
określone zabezpieczenia dotyczące wyświetlania reklam dzieciom lub nastolatkom. Gdy używasz tego ustawienia,
Google Mobile Ads SDK dodaje do żądań reklamy parametr tfat. Skonsultuj się z prawnikiem, aby określić odpowiednie traktowanie 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.
Traktowanie treści z uwzględnieniem wieku możesz ustawić za pomocą metody setAgeRestrictedTreatment() w interfejsie
RequestConfiguration.Builder
API.
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:
Java
RequestConfiguration requestConfiguration =
MobileAds.getRequestConfiguration().toBuilder()
// Indicate that ad requests should have child age treatment.
.setAgeRestrictedTreatment(AgeRestrictedTreatment.CHILD)
.build();
MobileAds.setRequestConfiguration(requestConfiguration);Kotlin
val requestConfiguration =
MobileAds.getRequestConfiguration()
.toBuilder()
// 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:
Java
RequestConfiguration requestConfiguration =
MobileAds.getRequestConfiguration().toBuilder()
// Indicate that ad requests should have teen age treatment.
.setAgeRestrictedTreatment(AgeRestrictedTreatment.TEEN)
.build();
MobileAds.setRequestConfiguration(requestConfiguration);Kotlin
val requestConfiguration =
MobileAds.getRequestConfiguration()
.toBuilder()
// Indicate that ad requests should have teen age 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:
Java
RequestConfiguration requestConfiguration =
MobileAds.getRequestConfiguration().toBuilder()
// Indicate that ad requests should have unspecified age treatment.
.setAgeRestrictedTreatment(AgeRestrictedTreatment.UNSPECIFIED)
.build();
MobileAds.setRequestConfiguration(requestConfiguration);Kotlin
val requestConfiguration =
MobileAds.getRequestConfiguration()
.toBuilder()
// Indicate that ad requests should have unspecified age treatment.
.setAgeRestrictedTreatment(AgeRestrictedTreatment.UNSPECIFIED)
.build()
MobileAds.setRequestConfiguration(requestConfiguration)Migracja do traktowania treści z uwzględnieniem wieku z TFCD i TFUA
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 wartości przypisanej do .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 wartości przypisanej do .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ł Twoje treści jako skierowane do dzieci, wyłączymy 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ę
setTagForChildDirectedTreatmentz 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ę
setTagForChildDirectedTreatmentz 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ę
setTagForChildDirectedTreatmentz 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);Użytkownicy, którzy nie osiągnęli wieku świadomego wyrażenia zgody
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 interfejsie
RequestConfiguration.Builder API 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 tag 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 włączające ustawienie „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 ogólnie 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 swoich żądań reklamy za pomocą
setMaxAdContentRating
metody. Reklamy AdMob zwracane po skonfigurowaniu tej opcji mają ocenę treści na tym poziomie lub niższą. Dostępne wartości tego dodatku sieciowego są oparte na
klasyfikacjach etykiet treści cyfrowych i muszą być jednym z tych
ciągów znaków:
MAX_AD_CONTENT_RATING_GMAX_AD_CONTENT_RATING_PGMAX_AD_CONTENT_RATING_TMAX_AD_CONTENT_RATING_MA
Poniższy 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
API (PPT) 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, parametr Publisher Privacy Treatment (PPT) jest dodawany do wszystkich przyszłych żądań reklamy w pozostałej części sesji.
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(
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 dodatkowych informacji wysyłanych z żądaniem reklamy
Dodatki sieciowe to dodatkowe informacje wysyłane z żądaniem reklamy, które są specyficzne dla danego źródła reklam.
Poniższy fragment kodu ustawia w Google dodatkowy parametr collapsible z wartością bottom:
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) w Google Ad Managerze. Poniższy 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 20–29 lat, a nie tylko na 25-latków.
Kotlin
.addCustomTargeting("age", listOf("24", "25", "26"))Java
.addCustomTargeting("age", Arrays.asList("24", "25", "26"))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();Identyfikatory podawane przez wydawcę
Możesz ustawić identyfikator podawany przez wydawcę (PPID) do użycia w ograniczeniu liczby wyświetleń, segmentacji odbiorców, kierowaniu, sekwencyjnej rotacji reklam i innych funkcjach 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ści 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 zapewnienia bezpieczeństwa marki.