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. Ayrıca, Google tarafından tanımlanan yayıncı tarafından sağlanan yapılandırılmış sinyalleri gönderebilir ve ek sinyallerin gönderilmesini sağlayabilirsiniz.

Kullanıcı sinyalleri JSON dosyası oluşturma

Üst düzeyde, tek bir anahtar/değer çifti içeren bir JSON nesnesi oluşturun. Anahtar PublisherProvidedTaxonomySignals, değeri ise bir nesne dizisi olmalıdır. Dizideki her nesnenin 2 anahtar/değer çifti olmalıdır:

  • Aşağıdaki IAB herkese açık spesifikasyonlarıyla eşlenen aşağıdaki değerleri kabul eden taxonomy anahtarı:

    • Kitle Sınıflandırması 1.1 için IAB_AUDIENCE_1_1
    • İçerik Sınıflandırması 2.2 için IAB_CONTENT_2_2
  • İlgili bir dize taksonomi değeri dizisi içeren values anahtarı.

Yapılandırılmış sinyaller dizisini oluşturma

Yapılandırılmış sinyaller için PublisherProvidedStructuredSignals anahtarını bir nesne dizisi değeriyle ekleyin. Nesneyi aşağıdaki sinyal anahtar/değer çiftleri listesine göre oluşturun:

Yapılandırılmış sinyaller tablosunun görünümünü değiştirme

Sinyal <code" dir="ltr" translate="no">"type" Value</code"> Olası "single_value" Değerleri Olası "values" Değerleri
Ses Feed'i Türü "audio_feed"
  • "af_1": Müzik
  • "af_2": Yayın
  • "af_3": Podcast
Yok
İçerik Derecelendirme "content_rating"
  • "cr_1": G
  • "cr_2": PG
  • "cr_3": K
  • "cr_4": MA
Yok
İçerik Yayınlama "delivery" Yok
  • "cd_1": Akış
  • "cd_2": Aşamalı
  • "cd_3": İndir
Yapım Kalitesi "prodq"
  • "pq_1": Profesyonel Olarak Üretilmiş
  • "pq_2": Üreten tüketici
  • "pq_3": Kullanıcı Tarafından Oluşturulan (UGC)
Yok

Sınıflandırma sinyalleri için IAB_AUDIENCE_1_1 ve IAB_CONTENT_2_2 öğelerinin kullanıldığı ve yapılandırılmış sinyaller içeren aşağıdaki örneği inceleyin.

const userSignals = {
  "PublisherProvidedTaxonomySignals": [{
     "taxonomy": "IAB_AUDIENCE_1_1",
     "values": ["6", "284"]
     // '6' = 'Demographic | Age Range | 30-34'
     // '284' = 'Interest | Business and Finance |  Mergers and Acquisitions'
  },
  {
     "taxonomy": "IAB_CONTENT_2_2",
     "values": ["49", "138"]
     // '49' = 'Books and Literature | Poetry'
     // '138' = 'Education | College Education | College Planning'
  }],
  "PublisherProvidedStructuredSignals": [{
      "type": "audio_feed",
      "single_value": "af_1",
    },
    {
      "type": "delivery",
      "values": ["cd_1", "cd_3"],
    },
  ],
};

Reklam isteğinizi yapılandırma

AdsRequest cihazınızla PPS göndermek için şu adımları uygulayın:

  • Kullanıcının ilgi alanı, davranışı veya bağlamsal verilerini içeren bir JSON dizesi oluşturun.
  • Yukarıdaki JSON dizesinden Base64 kodlu bir ASCII dizesi oluşturun.
  • Kodlanmış dizeyi, &ppsj= parametresini kullanarak reklam etiketi URL'nize ekleyin.
JSONObject userSignalsObject = new JSONObject();
JSONArray userSignalsArray = new JSONArray();
JSONObject audienceTaxonomyObject = new JSONObject();
JSONArray valuesArray = new JSONArray();
valuesArray.put("1");
valuesArray.put("284");
try {
  audienceTaxonomyObject.put("taxonomy", "IAB_AUDIENCE_1_1");
  audienceTaxonomyObject.put("values", valuesArray);
} catch (JSONException e) {
  e.printStackTrace();
}

userSignalsArray.put(audienceTaxonomyObject);

try {
  userSignalsObject.put("PublisherProvidedTaxonomySignals", userSignalsArray);
} catch (JSONException e) {
  e.printStackTrace();
}

String userSignals = userSignalsObject.toString();

byte[] userSignalsByte=new byte[0];
try {
  userSignalsByte = userSignals.getBytes(StandardCharsets.UTF_8);
  String encodedBas64Signals = android.util.Base64.encodeToString(
    userSignalsByte,
    android.util.Base64.URL_SAFE);
  encodedSignals = URLEncoder.encode(encodedBas64Signals, "UTF-8");
} catch (java.io.UnsupportedEncodingException error) {
  Log.w("Sample app", error);
}

String finalAdTag = sampleAdTag + "&ppsj=" + encodedSignals;