Wielu twórców treści i reklamodawców chce wiedzieć, ile unikalnych osób obejrzało ich treści. Używaj Shared Storage, aby rejestrować pierwsze wyświetlenie reklamy, osadzonego filmu lub publikacji przez użytkownika i zapobiegać dublowaniu się pomiarów tego samego użytkownika w różnych witrynach. Następnie możesz użyć interfejsu Private Aggregation API, aby wygenerować raport podsumowujący zasięg.
Interfejs Shared Storage API to propozycja Piaskownicy prywatności dotycząca ogólnego przeznaczenia, przechowywania między witrynami, która obsługuje wiele możliwych zastosowań. Interfejs Private Aggregation API to interfejs wyjściowy dostępny w Shared Storage, który umożliwia agregowanie danych z różnych witryn. Aby dowiedzieć się więcej o metodach implementowania tych pomiarów, przeczytaj dokument na temat zasięgu.
Wypróbuj pomiar zasięgu wśród unikalnych użytkowników
Aby przetestować pomiar unikalnego zasięgu za pomocą Shared Storage i Private Aggregation, sprawdź, czy używasz Chrome w wersji M107 lub nowszej. Włącz wszystkie interfejsy API dotyczące prywatności w reklamach w sekcji chrome://settings/adPrivacy
.
Możesz też włączyć współdzielone miejsce na dane, używając parametru --enable-features=PrivacySandboxAdsAPIsOverride,OverridePrivacySandboxSettingsLocalTesting,SharedStorageAPI,FencedFrames
w wierszu poleceń.
Eksperymentowanie z przykładowymi fragmentami kodu
Możesz śledzić, ilu unikalnych użytkowników widziało Twoje treści w różnych witrynach. W tym przykładzie wymiar identyfikatora treści jest zakodowany w kluczu agregacji (zasobniku), a liczba jest używana jako wartość podlegająca agregacji. Raport podsumowania zawiera informacje takie jak „Około 391 użytkowników widziało identyfikator treści 123”.
W tym przykładzie:
unique-reach-measurement.js
jest wczytywany za pomocą ramki i odpowiada za wczytywanie workletu pamięci współdzielonej.unique-reach-measurement-worklet.js
to element worklet w Shared Storage, który sprawdza flagę w Shared Storage i wysyła raport za pomocą interfejsu Private Aggregation API.
async function measureUniqueReach() {
// Load the Shared Storage worklet
await window.sharedStorage.worklet.addModule('reach-measurement-worklet.js');
// Run the reach measurement operation
await window.sharedStorage.run('reach-measurement', { data: { contentId: '1234' } });
}
measureUniqueReach();
// Learn more about noise and scaling from the Private Aggregation fundamentals
// documentation on Chrome blog
const SCALE_FACTOR = 65536;
function convertContentIdToBucket(contentId) {
return BigInt(contentId);
}
class ReachMeasurementOperation {
async run(data) {
const { contentId } = data;
// Read from Shared Storage
const key = 'has-reported-content';
const hasReportedContent = (await sharedStorage.get(key)) === 'true';
// Don't report if a report has been sent already
if (hasReportedContent) {
return;
}
// Generate the aggregation key and the aggregatable value
const bucket = convertContentIdToBucket(contentId);
const value = 1 * SCALE_FACTOR;
// Send an aggregatable report using the Private Aggregation API
privateAggregation.contributeToHistogram({ bucket, value });
// Set the report submission status flag
await sharedStorage.set(key, true);
}
}
// Register the operation
register('reach-measurement', ReachMeasurementOperation);
Angażowanie użytkowników i przesyłanie opinii
Pamiętaj, że propozycja interfejsu Shared Storage API jest obecnie przedmiotem dyskusji i jest w fazie rozwoju, dlatego może ulec zmianie.
Chętnie poznamy Twoją opinię na temat interfejsu Shared Storage API.
- Proposal (Propozycja): zapoznaj się ze szczegółami oferty.
- Dyskusja: dołącz do trwającej dyskusji, aby zadawać pytania i dzielić się swoimi spostrzeżeniami.
Trzymaj rękę na pulsie
- Lista mailingowa: zasubskrybuj naszą listę mailingową, aby otrzymywać najnowsze informacje i ogłoszenia dotyczące interfejsu Storage API.
Potrzebujesz pomocy?
- Pomoc dla deweloperów: możesz kontaktować się z innymi deweloperami i uzyskiwać odpowiedzi na swoje pytania w repozytorium pomocy dla deweloperów Piaskownicy prywatności.