Vom Publisher bereitgestellte Signale

Sie können Zielgruppen- und Kontextdaten als vom Publisher bereitgestellte Signale (PPS) in Anzeigenanfragen senden. Mit PPS können Sie Ihre Nutzerdaten nutzen, um die programmatische Monetarisierung zu verbessern. Dazu geben Sie Ihre Zielgruppenmerkmale mithilfe standardisierter Taxonomien an Bieter für alle Transaktionstypen weiter, ohne Nutzer-IDs weitergeben zu müssen. Zu den Zielgruppenmerkmalen können verhaltens- und interessenbezogene Daten (IAB-Taxonomie für Zielgruppen 1.1) und kontextbezogene Daten (IAB-Taxonomie für Inhalte 2.2) gehören. Sie können auch vom Publisher bereitgestellte strukturierte Signale senden, die von Google definiert sind und das Senden zusätzlicher Signale ermöglichen.

JSON-Nutzersignale erstellen

Erstellen Sie auf der obersten Ebene ein JSON-Objekt mit einem einzelnen Schlüssel/Wert-Paar. Der Schlüssel sollte PublisherProvidedTaxonomySignals und sein Wert ein Array von Objekten sein. Jedes Objekt im Array sollte zwei Schlüssel/Wert-Paare haben:

  • Den Schlüssel taxonomy für die folgenden Werte, die den folgenden öffentlichen IAB-Spezifikationen zugeordnet sind:

    • IAB_AUDIENCE_1_1 für die Zielgruppen-Taxonomie 1.1
    • IAB_CONTENT_2_2 für Inhaltstaxonomie 2.2
  • Der Schlüssel values mit einem entsprechenden Array von String-Taxonomiewerten.

Array für strukturierte Signale erstellen

Fügen Sie für strukturierte Signale den Schlüssel PublisherProvidedStructuredSignals mit dem Wert eines Objektarrays hinzu. Erstellen Sie das Objekt basierend auf der folgenden Liste von Signal-Schlüssel/Wert-Paaren:

Ansicht der Tabelle mit strukturierten Signalen umschalten

Signal <code" dir="ltr" Translate="no">"type" Value</code"> Mögliche "single_value"-Werte Mögliche "values"-Werte
Audiofeedtyp "audio_feed"
  • "af_1": Musik
  • "af_2": Nachricht an alle
  • "af_3": Podcast
Einstufung des Inhalts "content_rating"
  • "cr_1": G
  • "cr_2": PG
  • "cr_3": D
  • "cr_4": MA
Inhaltsübermittlung "delivery"
  • "cd_1": Streaming
  • "cd_2": progressiv
  • "cd_3": Herunterladen
Produktionsqualität "prodq"
  • "pq_1": Professionelle Produktion
  • "pq_2": Prosumer
  • "pq_3": Von Nutzern erstellte Inhalte

Im folgenden Beispiel werden IAB_AUDIENCE_1_1 und IAB_CONTENT_2_2 für Taxonomiesignale verwendet und es sind strukturierte Signale enthalten.

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"],
    },
  ],
};

Anzeigenanfrage konfigurieren

So senden Sie PPS mit Ihrer AdsRequest:

  • Erstellen Sie einen JSON-String mit den Interessen-, Verhaltens- oder Kontextdaten des Nutzers.
  • Erstellen Sie aus dem obigen JSON-String einen Base64-codierten ASCII-String.
  • Hängen Sie den codierten String mit dem Parameter &ppsj= an die URL Ihres Anzeigen-Tags an.
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;