Hedefleme

Bu kılavuzda, bir reklam isteğine nasıl hedefleme bilgilerinin sağlanacağı açıklanmaktadır. Çalışan bir örnek için Android API Demo uygulamasını indirin.

API Demosunu indirin

Ön koşul

RequestConfiguration

RequestConfiguration, MobileAds statik bir yöntemle global olarak uygulanacak hedefleme bilgilerini toplayan bir nesnedir.

İstek yapılandırmasını güncellemek için mevcut yapılandırmadan bir oluşturucu edinin, istediğiniz güncellemeleri yapın ve aşağıdaki gibi ayarlayın:

Java

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

Kotlin

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

Çocuklara yönelik ayar

Çocukların Çevrimiçi Gizliliğini Koruma Yasası (COPPA) için "çocuklara yönelik olarak değerlendirilme etiketi" adlı bir ayar bulunur. Bu etiketi ayarlayarak, bu bildirimin doğru olduğunu ve uygulamanın sahibi adına hareket etme yetkisine sahip olduğunuzu onaylamış olursunuz. Bu ayarın kötüye kullanımının Google Hesabınızın feshedilmesiyle sonuçlanabileceğini kabul edersiniz.

Bir uygulama geliştiricisi olarak, bir reklam isteği yaptığınızda 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 bu reklam isteğinde IBA ve yeniden pazarlama reklamlarını devre dışı bırakmak için gerekli işlemleri yaparız.

Bu ayar, RequestConfiguration.Builder.setTagForChildDirectedTreatment(int) üzerinden Google Play Hizmetleri SDK'sının tüm sürümleriyle kullanılabilir:

  • İçeriğinizin COPPA amaçları doğrultusunda çocuklara yönelik olarak değerlendirilmesini istediğinizi belirtmek için setTagForChildDirectedTreatment öğesini TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE ile çağırın. Bu, Android reklam kimliğinin (AAID) aktarılmasını engeller.

  • İçeriğinizin COPPA amaçları doğrultusunda çocuklara yönelik olarak değerlendirilmesini istemediğinizi belirtmek için setTagForChildDirectedTreatment öğesini TAG_FOR_CHILD_DIRECTED_TREATMENT_FALSE ile çağırın.

  • Reklam isteklerinde içeriğinizin COPPA'ya göre nasıl ele alınmasını istediğinizi belirtmek istemiyorsanız setTagForChildDirectedTreatment ile TAG_FOR_CHILD_DIRECTED_TREATMENT_UNSPECIFIED yöntemini çağırın.

Aşağıdaki örnek, içeriğinizin COPPA amaçları doğrultusunda çocuklara yönelik olarak değerlendirilmesini istediğinizi belirtir:

Java

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

Kotlin

var requestConfiguration = MobileAds.getRequestConfiguration()
  .toBuilder()
  .setTagForChildDirectedTreatment(RequestConfiguration.TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE)
  .build()
MobileAds.setRequestConfiguration(requestConfiguration)

Reklam isteklerinizi, Avrupa Ekonomik Alanı'nda (AEA) reşit olma yaşının altındaki kullanıcılar için değerlendirilecek şekilde 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üklerinizin olabileceğini unutmayın. Avrupa Birliği'nin yönergelerini inceleyin ve kendi yasal danışmanınıza başvurun. Google araçlarının, uyumluluğu kolaylaştırmak için tasarlandığını ve herhangi bir yayıncını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 (TFUA) Altındaki Kullanıcılar İçin Etiketi eklenir. Bu parametre, yeniden pazarlama dahil olmak üzere tüm reklam istekleri için 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 istekler de devre dışı bırakılır.

Çocuklara yönelik ayarlarda olduğu gibi, RequestConfiguration.Builder ürününde de TFUA parametresini setTagForUnderAgeOfConsent() ayarlamak için kullanabileceğiniz bir yöntem vardır.

  • 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() numarasını TAG_FOR_UNDER_AGE_OF_CONSENT_TRUE ile arayın. Bu durum, Android reklam kimliğinin (AAID) aktarılmasını da engeller.

  • Reklam isteğinin, Avrupa Ekonomik Alanı'nda (AEA) reşit olma yaşının altındaki kullanıcılar için değerlendirilmemesini istediğinizi belirtmek üzere TAG_FOR_UNDER_AGE_OF_CONSENT_FALSE ile setTagForUnderAgeOfConsent() numaralı telefonu arayın.

  • Reklam isteğinin, Avrupa Ekonomik Alanı'nda (AEA) reşit olma yaşının altındaki kullanıcılar için değerlendirilip değerlendirilmeyeceğini belirtmediğinizi belirtmek üzere setTagForUnderAgeOfConsent() numaralı telefonu TAG_FOR_UNDER_AGE_OF_CONSENT_UNSPECIFIED ile arayın.

Aşağıdaki örnek, reklam isteklerinize TFUA'nın dahil edilmesini istediğinizi gösterir:

Java

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

Kotlin

var requestConfiguration = MobileAds.getRequestConfiguration()
  .toBuilder()
  .setTagForUnderAgeOfConsent(RequestConfiguration.TAG_FOR_UNDER_AGE_OF_CONSENT_TRUE)
  .build()
MobileAds.setRequestConfiguration(requestConfiguration)

Çocuklara yönelik ayarını ve setTagForUnderAgeOfConsent()'yi etkinleştiren etiketlerin her ikisi de aynı anda true olarak ayarlanmamalıdır. Bu şekilde olması durumunda çocuklara yönelik ayar öncelikli olur.

Reklam içeriğini filtreleme

Google Play'in reklam içindeki ilişkili teklifleri içeren Uygunsuz Reklam Politikası'na uymak için, içerik Google Play'in politikalarına uygun olsa bile uygulamanızda gösterilen tüm reklamlar ve bunlarla ilişkili teklifler uygulamanızın içerik derecelendirmesine uygun olmalıdır.

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 istekleri için maksimum reklam içeriği derecelendirmesi belirleyebilir. Bu yapılandırıldığında döndürülen AdMob reklamlarının içerik derecelendirmesi, söz konusu düzeyde veya daha düşük olur. 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 değerinden yüksek olmayan bir dijital içerik etiketi tanımlamasına karşılık gelmesi gerektiğini belirtmek için bir RequestConfiguration nesnesini yapılandırır:

Java

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

Kotlin

var 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:

Yayıncılara Yönelik Gizlilik Değerlendirmesi (Beta)

Yayıncı Gizlilik Değerlendirmesi (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 işleme (PPT) parametresi eklenir.

Varsayılan olarak, Google'a yapılan reklam istekleri sonucunda kişiselleştirilmiş reklamlar yayınlanır. Aşağıdaki kod, tüm reklam istekleri için reklam kişiselleştirmeyi kapatır:

Java

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

Kotlin

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

Reklam isteği

AdManagerAdRequest nesnesi, bir reklam isteğiyle birlikte gönderilecek hedefleme bilgilerini toplar.

Özel hedefleme

Özel anahtar/değer çiftlerini, AdManagerAdRequest.Builder.addCustomTargeting() aracılığıyla Google Ad Manager kampanyalarını (satır öğeleri) hedeflemek için geçirebilirsiniz:

Java

// Example: Pass custom targeting "age=25".
AdManagerAdRequest newRequest = new AdManagerAdRequest.Builder()
    .addCustomTargeting("age", "25")
    .build();

Kotlin

// Example: Pass custom targeting "age=25".
var newRequest = AdManagerAdRequest.Builder()
  .addCustomTargeting("age", "25")
  .build()

Dize listesi olarak bir anahtar için birden çok değer aktarabilirsiniz. Örneğin, yalnızca 25 yaşındakileri değil, 20'lerin ortasındaki kişileri hedefleyebilirsiniz.

.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ç tutma

AdManagerAdRequest.Builder tarafından sağlanan addCategoryExclusion() yöntemini kullanarak bir isteğe alan düzeyinde kategori hariç tutma düzeyi ekleyebilirsiniz:

Java

// Example: Exclude "automobile" and "boat" categories.
AdManagerAdRequest newRequest = new AdManagerAdRequest.Builder()
    .addCategoryExclusion("automobile")
    .addCategoryExclusion("boat")
    .build();

Kotlin

// Example: Exclude "automobile" and "boat" categories.
var newRequest = AdManagerAdRequest.Builder()
  .addCategoryExclusion("automobile")
  .addCategoryExclusion("boat")
  .build()

Android API Demo uygulamasında kategori hariç tutmaların uygulanması için Ad Manager Kategori Hariç Tutma ö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 diğer kitleye dayalı reklam yayını kontrolleri için kullanılacak, yayıncı tarafından sağlanan bir tanımlayıcı (PPID) ayarlayabilirsiniz.

PPID'yi ayarlamayla ilgili bir örneği aşağıda bulabilirsiniz:

Java

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

Kotlin

var adRequest = 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çerik verilerini, reklam isteklerinde yayıncı tarafından sağlanan sinyaller (PPS) olarak gönderebilirsiniz. PPS ile kitle özelliklerinizi tüm işlem türlerindeki teklif verenlere ileterek standart sınıflandırmalar kullanıp kullanıcı tanımlayıcılarını paylaşmaya gerek kalmadan 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 içeriğe dayalı verileri (IAB İçerik Sınıflandırması 2.2) içerebilir.

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

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

İçerik URL'si

İçerik hedefli reklamlar ve marka güvenliği için içerik URL'si sağlamak üzere AdManagerAdRequest oluştururken setContentUrl() işlevini çağırabilirsiniz:

Java

AdManagerAdRequest.Builder builder = new AdManagerAdRequest.Builder();
builder.setContentUrl("https://www.example.com");
AdManagerAdRequest request = builder.build();

Kotlin

val builder = AdManagerAdRequest.Builder()
builder.setContentUrl("https://www.example.com")
val request = builder.build()

Marka güvenliği (Beta)

Çeşitli kitlelere yönelik dinamik içerikler gösteren uygulamalar, AdManagerAdRequest oluştururken setNeighboringContentUrls() yöntemini kullanarak kısa bir URL listesi sağlayabilir:

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

Kotlin

var urls = mutableListOf("https://www.mycontenturl1.com", "https://www.mycontenturl2.com",
                         "https://www.mycontenturl3.com", "https://www.mycontenturl4.com")
var requestWithContent = AdManagerAdRequest.Builder()
  .setNeighboringContentUrls(urls)
  .build()

.setNeighboringContentUrls(), yalnızca marka güvenliği için kullanılması açısından .setContentUrl() ile ayrılır.