W żądaniach reklamy możesz wysyłać dane o odbiorcach i dane kontekstowe jako sygnały dostarczane przez wydawcę. Dzięki sygnałom dostarczanym przez wydawcę możesz używać danych użytkowników do poprawy monetyzacji programowej, przekazując licytującym charakterystykę odbiorców we wszystkich typach transakcji za pomocą standardowych taksonomii bez konieczności udostępniania identyfikatorów użytkowników. Charakterystyka odbiorców może obejmować dane behawioralne i dane o zainteresowaniach ( taksonomia odbiorców IAB 1.1) oraz dane kontekstowe ( taksonomia treści IAB 2.2). Możesz też wysyłać sygnały uporządkowane dostarczane przez wydawcę, które są zdefiniowane przez Google i umożliwiają wysyłanie dodatkowych sygnałów.
Tworzenie pliku JSON z sygnałami użytkownika
Na najwyższym poziomie utwórz obiekt JSON z pojedynczą parą klucz-wartość. Klucz powinien mieć postać PublisherProvidedTaxonomySignals, a jego wartość powinna być tablicą obiektów. Każdy obiekt w tablicy powinien zawierać 2 pary klucz-wartość:
Klucz
taxonomy, który akceptuje te wartości zmapowane na te publiczne specyfikacje IAB:IAB_AUDIENCE_1_1w przypadku taksonomii odbiorców 1.1IAB_CONTENT_2_2w przypadku taksonomii treści 2.2
Klucz
valuesz odpowiednią tablicą wartości taksonomii w postaci ciągów znaków.
Tworzenie tablicy sygnałów uporządkowanych
W przypadku sygnałów uporządkowanych dodaj klucz PublisherProvidedStructuredSignals z wartością w postaci 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">"type" Value</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 |
Oto przykład, który używa IAB_AUDIENCE_1_1 i IAB_CONTENT_2_2 w przypadku sygnałów taksonomii 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 reklamy
Aby wysłać sygnały dostarczane przez wydawcę za pomocą
AdsRequest:
- Utwórz ciąg znaków JSON z danymi o zainteresowaniach, zachowaniu lub kontekście użytkownika.
- Utwórz ciąg znaków ASCII zakodowany w Base64 na podstawie powyższego ciągu znaków JSON.
- Dołącz zakodowany ciąg znaków do adresu URL tagu reklamy za pomocą parametru
&ppsj=.
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;