Dane o odbiorcach i dane kontekstowe możesz wysyłać w żądaniach reklamy jako sygnały dostarczane przez wydawcę (PPS). Dzięki PPS możesz ulepszać zarabianie na automatyzacji, korzystając z danych o użytkownikach do przekazywania cech odbiorców wszystkim licytującym we wszystkich typach transakcji, używając standardowych taksonomii bez konieczności udostępniania identyfikatorów użytkowników. Twoje cechy odbiorców mogą obejmować dane o zachowaniu i zainteresowaniach (taksonomia odbiorców IAB w wersji 1.1) oraz dane kontekstowe (taksonomia treści IAB w wersji 2.2). Możesz też wysyłać uporządkowane sygnały dostarczane przez wydawcę, które zostały zdefiniowane przez Google, i zezwolić na wysyłanie dodatkowych sygnałów.
Tworzenie sygnałów użytkownika w formacie JSON
Na najwyższym poziomie utwórz obiekt JSON z jedną parą klucz-wartość. Kluczem powinna być wartość PublisherProvidedTaxonomySignals
, a jej wartość powinna być tablicą obiektów. Każdy obiekt w tablicy powinien mieć 2 pary klucz-wartość:
Klucz
taxonomy
, który akceptuje te wartości zmapowane na zgodne ze specyfikacjami publicznymi IAB:IAB_AUDIENCE_1_1
dla taksonomii odbiorców 1.1IAB_CONTENT_2_2
dla taksonomii treści 2.2
Klucz
values
z odpowiednią tablicą wartości taksonomii ciągów znaków.
Utwórz tablicę sygnałów uporządkowanych
W przypadku uporządkowanych sygnałów dodaj klucz PublisherProvidedStructuredSignals
z wartością tablicy obiektów. Utwórz obiekt na podstawie tej listy par klucz-wartość sygnału:
Przełączanie widoku tabeli sygnałów uporządkowanych
Sygnał | <code" dir="ltr"translate="no">Wartość „type"</code"> | Możliwe wartości "single_value" |
Możliwe wartości "values" |
---|---|---|---|
Typ pliku danych audio | "audio_feed" |
|
nie dotyczy |
Ocena treści | "content_rating" |
|
nie dotyczy |
Dostawa treści | "delivery" |
nie dotyczy |
|
Poziom produkcji | "prodq" |
|
nie dotyczy |
Zobacz poniższy przykład, który używa sygnałów taksonomii IAB_AUDIENCE_1_1
i IAB_CONTENT_2_2
oraz zawiera sygnały uporządkowane.
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"],
},
],
};
Konfigurowanie żądania strumienia
Aby wysyłać PPS za pomocą StreamRequest
, wykonaj te czynności:
- Utwórz ciąg JSON z zainteresowaniami, zachowaniem lub danymi kontekstowymi użytkownika.
- Utwórz z powyższego ciągu znaków JSON ciąg ASCII z kodowaniem Base64.
- Dodaj zakodowany kod JSON za pomocą
StreamRequest.setAdTagParameters
.
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();
}
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);
}
Map<String, String> adTagParamMap = new java.util.HashMap<String, String>();
adTagParamMap.put("ppsj", encodedSignals);
streamRequest.setAdTagParameters(adTagParamMap)