Bu kılavuzda, Google Mobile Ads SDK'sına hedefleme bilgilerinin nasıl sağlanacağı açıklanmaktadır.
Çalışabilir bir örnek için Android API Demo uygulamasını indirin.Ön koşul
- Başlangıç kılavuzunu tamamlayın.
RequestConfiguration
RequestConfiguration
her reklam isteğine genel olarak uygulanan hedefleme bilgilerini toplar. Kullanılabilir hedefleme etiketleri için RequestConfiguration.Builder
belgelerine bakın.
İstek yapılandırmasını güncellemek için mevcut yapılandırmadan bir oluşturucu alın, istediğiniz güncellemeleri yapın ve aşağıdaki gibi ayarlayın:
Kotlin
val requestConfiguration = MobileAds.getRequestConfiguration()
.toBuilder()
.build()
MobileAds.setRequestConfiguration(requestConfiguration)
Java
RequestConfiguration requestConfiguration = MobileAds.getRequestConfiguration()
.toBuilder()
.build();
MobileAds.setRequestConfiguration(requestConfiguration);
Çocuklara yönelik ayar
Çocukların Çevrimiçi Gizliliğini Koruma Yasası (COPPA) uyarınca "çocuklara yönelik işlem için etiketleme" adlı bir ayar vardır. Bu etiketi ayarlayarak bu bildirimin doğru olduğunu ve uygulamanın sahibi adına işlem yapmaya yetkili olduğunuzu onaylarsınız. Bu ayarın kötüye kullanılmasının Google Hesabınızın feshedilmesine yol açabileceğini kabul edersiniz.
Uygulama geliştirici olarak, reklam isteği gönderirken Google'ın içeriğinizi çocuklara yönelik olarak değerlendirmesini isteyip istemediğinizi belirtebilirsiniz. Google'ın içeriğinizi çocuklara yönelik olarak değerlendirmesini istediğinizi belirtirseniz söz konusu reklam isteğinde IAB ve yeniden pazarlama reklamlarını devre dışı bırakmak için gerekli işlemleri yaparız.
Çocuklara yönelik ayarı şuradan uygulayabilirsiniz:
setTagForChildDirectedTreatment()
:
İçeriğinizin COPPA'ya uygun olarak çocuklara yönelik olarak değerlendirilmesini istediğinizi belirtmek için
setTagForChildDirectedTreatment
ileTAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE
numaralı telefonu arayın. Bu, Android reklam kimliğinin (AAID) aktarılmasını engeller.İçeriğinizin COPPA'ya uygun olarak çocuklara yönelik olarak değerlendirilmesini istemediğinizi belirtmek için
setTagForChildDirectedTreatment
numaralı telefonuTAG_FOR_CHILD_DIRECTED_TREATMENT_FALSE
ile arayın.Reklam isteklerinde içeriğinizin COPPA'ya göre nasıl ele alınmasını istediğinizi belirtmek istemiyorsanız
setTagForChildDirectedTreatment
ileTAG_FOR_CHILD_DIRECTED_TREATMENT_UNSPECIFIED
numaralı telefonu arayın.
Aşağıdaki örnek, içeriğinizin COPPA'ya göre çocuklara yönelik olarak değerlendirilmesini istediğinizi gösterir:
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);
Reşit olma yaşının altındaki kullanıcılar
Reklam isteklerinizi, Avrupa Ekonomik Alanı'nda (AEA) bulunan, reşit olmayan kullanıcılara yönelik olarak değerlendirilmesi için işaretleyebilirsiniz. Bu özellik, Genel Veri Koruma Yönetmeliği'ne (GDPR) uygunluğu kolaylaştırmak için tasarlanmıştır. GDPR kapsamında başka yasal yükümlülükleriniz de olabilir. Avrupa Birliği yönergelerini inceleyin ve kendi hukuk danışmanınıza danışın. Google araçlarının, uyumluluğu kolaylaştırmak için tasarlandığını ve yayıncıların hukuki yükümlülüklerini azaltmadığını unutmayın. GDPR'nin yayıncıları nasıl etkilediği hakkında daha fazla bilgi edinin.
Bu özellik kullanılırken reklam isteğine Avrupa'da reşit olma yaşının altındaki kullanıcılar için etiket (TFUA) parametresi eklenir. Bu parametre, tüm reklam istekleri için yeniden pazarlama dahil olmak üzere kişiselleştirilmiş reklamcılığı devre dışı bırakır. Reklam ölçüm pikselleri ve üçüncü taraf reklam sunucuları gibi üçüncü taraf reklam sağlayıcılarına gönderilen istekleri de devre dışı bırakır.
Çocuklara yönelik ayarlar gibi, RequestConfiguration.Builder
'te TFUA parametresini ayarlamak için bir yöntem vardır:
setTagForUnderAgeOfConsent()
,
Aşağıdaki seçenekler mevcuttur.
Reklam isteğinin, Avrupa Ekonomik Alanı'nda (AEA) reşit olma yaşının altındaki kullanıcılar için değerlendirilmesini istediğinizi belirtmek üzere
setTagForUnderAgeOfConsent()
çağrısınıTAG_FOR_UNDER_AGE_OF_CONSENT_TRUE
ile birlikte yapın. Bu, Android reklam kimliğinin (AAID) de aktarılmasını engeller.Reklam isteğinin, Avrupa Ekonomik Alanı'ndaki (AEA) reşit olma yaşının altındaki kullanıcılar için değerlendirilmemesini belirtmek üzere
setTagForUnderAgeOfConsent()
çağrısınıTAG_FOR_UNDER_AGE_OF_CONSENT_FALSE
ile birlikte yapın.Reklam isteğinin, Avrupa Ekonomik Alanı'ndaki (AEA) reşit olma yaşının altındaki kullanıcılar için değerlendirilip değerlendirilmeyeceğini belirtmediğinizi belirtmek üzere
setTagForUnderAgeOfConsent()
ileTAG_FOR_UNDER_AGE_OF_CONSENT_UNSPECIFIED
çağrısı yapın.
Aşağıdaki örnekte, TFUA'nın reklam isteklerinize dahil edilmesini istediğiniz belirtilmektedir:
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);
Çocuklara yönelik ayar'ı etkinleştiren etiketler ve setTagForUnderAgeOfConsent()
aynı anda true
olarak ayarlanmamalıdır.
Bu şekilde ayarlanırlarsa çocuklara yönelik ayar öncelikli olur.
Reklam içeriğini filtreleme
Reklamdaki ilişkili teklifleri içeren Google Play'in Uygunsuz Reklamlar Politikası'na uymak için uygulamanızda gösterilen tüm reklamlar ve bu reklamlarla ilişkili teklifler, uygulamanızın içerik derecelendirmesine uygun olmalıdır (içerik kendi başına Google Play'in politikalarıyla uyumlu olsa bile).
Maksimum reklam içeriği derecelendirmesi gibi araçlar, kullanıcılarınıza gösterilen reklamların içerikleri üzerinde daha fazla kontrole sahip olmanıza yardımcı olabilir. Platform politikalarına uygunluğu sağlamak için maksimum içerik derecelendirmesi ayarlayabilirsiniz.
Uygulamalar,
setMaxAdContentRating
yöntemini kullanarak reklam isteklerine yönelik maksimum reklam içeriği derecelendirmesi belirleyebilir. Bu yapılandırıldığında döndürülen AdMob reklamlarının içerik derecelendirmesi bu düzeyde veya bu düzeyin altındadır. Bu ağ ekstrası için olası değerler dijital içerik etiketi sınıflandırmalarına dayanır ve aşağıdaki dizelerden biri olmalıdır:
MAX_AD_CONTENT_RATING_G
MAX_AD_CONTENT_RATING_PG
MAX_AD_CONTENT_RATING_T
MAX_AD_CONTENT_RATING_MA
Aşağıdaki kod, döndürülen reklam içeriğinin G
'ten yüksek olmayan bir dijital içerik etiketi tanımına karşılık gelmesi gerektiğini belirtmek için bir RequestConfiguration
nesnesini yapılandırır:
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);
Aşağıdaki konular hakkında daha fazla bilgi edinin:
Her reklam isteği için maksimum içerik derecelendirmesini ayarlama
Uygulama veya hesap için maksimum reklam içeriği derecelendirmesini ayarlama
Yayıncı Gizlilik Değerlendirmesi (Beta)
Yayıncı Gizlilik İşlemi
(PPT) API, uygulamaların setPublisherPrivacyPersonalizationState()
yöntemini kullanarak tüm reklam istekleri için reklam kişiselleştirmenin devre dışı bırakılıp bırakılmayacağını belirtmesine olanak tanıyan isteğe bağlı bir araçtır.
Bu özellik kullanılırken oturumun geri kalanı için gelecekteki tüm reklam isteklerine bir yayıncı gizlilik değerlendirmesi (PPT) parametresi eklenir.
Google'a yapılan reklam isteklerinde varsayılan olarak kişiselleştirilmiş reklamlar yayınlanır. Aşağıdaki kod, tüm reklam istekleri için reklam kişiselleştirmeyi devre dışı bırakır:
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);
Reklam isteği
AdManagerAdRequest
nesnesi, reklam isteğiyle gönderilecek hedefleme bilgilerini toplar.
Özel hedefleme
AdManagerAdRequest.Builder.addCustomTargeting()
aracılığıyla Google Ad Manager kampanyalarını (satır öğeleri) hedeflemek için özel anahtar/değer çiftleri iletebilirsiniz:
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();
Bir anahtar için birden çok değeri dize listesi olarak iletebilirsiniz. Örneğin, yalnızca 25 yaşında olanları değil, 25 yaşlarının ortalarındaki kişileri hedeflemek için.
.addCustomTargeting("age", Arrays.asList("24", "25", "26"))
Android API Demo uygulamasında özel hedeflemenin uygulanması için Ad Manager Özel Hedefleme örneğine göz atın.
Kategori hariç tutmaları
AdManagerAdRequest.Builder
tarafından sağlanan addCategoryExclusion()
yöntemini kullanarak bir isteğe alan düzeyinde kategori hariç tutma düzeyi ekleyebilirsiniz:
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();
Android API Demo uygulamasında kategori hariç tutmalarının uygulanması için Ad Manager Kategori Hariç Tutmaları örneğine göz atın.
Yayıncı tarafından sağlanan tanımlayıcılar
Sıklık sınırı, kitle segmentasyonu ve hedefleme, sıralı reklam rotasyonu ve cihazlar arasında kitleye dayalı diğer reklam yayınlama kontrolleri için yayıncı tarafından sağlanan bir tanımlayıcı (PPID) ayarlayabilirsiniz.
PPID'yi ayarlama örneğini aşağıda bulabilirsiniz:
Kotlin
val adRequest = AdManagerAdRequest.Builder()
.setPublisherProvidedId("AB123456789")
.build()
Java
AdManagerAdRequest adRequest = new AdManagerAdRequest.Builder()
.setPublisherProvidedId("AB123456789")
.build();
Android API Demo uygulamasında yayıncı tarafından sağlanan tanımlayıcıların (PPID) uygulanması için Ad Manager PPID örneğine göz atın.
Yayıncı tarafından sağlanan sinyaller
Kitle ve içeriğe dayalı verileri reklam isteklerinde yayıncı tarafından sağlanan sinyaller (PPS) olarak gönderebilirsiniz. PPS ile kullanıcı tanımlayıcılarını paylaşmanıza gerek kalmadan standart sınıflandırmaları kullanarak kitle özelliklerinizi tüm işlem türlerindeki teklif verenlere ileterek programatik para kazanmayı iyileştirmek için kullanıcı verilerinizi kullanabilirsiniz. Kitle özellikleriniz davranış ve ilgi alanına dayalı verileri (IAB Kitle Sınıflandırması 1.1) ve bağlama dayalı verileri (IAB İçerik Sınıflandırması 2.2) içerebilir.
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 = AdRequest.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()
İçerik URL'si
İçerik hedefli reklamlar ve marka güvenliği için içerik URL'si sağlamak amacıyla AdManagerAdRequest
oluştururken setContentUrl()
işlevini çağırabilirsiniz:
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();
Marka güvenliği (Beta)
Değişen kitlelere yönelik dinamik içerikler gösteren uygulamalar, AdManagerAdRequest
oluştururken setNeighboringContentUrls()
yöntemini kullanarak URL'lerin kısa bir listesini sağlayabilir:
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()
, yalnızca marka güvenliği için kullanılması bakımından .setContentUrl()
'ten farklıdır.