Viele Inhaltsersteller und Werbetreibende möchten wissen, wie viele einzelne Nutzer ihre Inhalte gesehen haben. Über den gemeinsam genutzten Speicher können Sie aufzeichnen, wann ein Nutzer Ihre Anzeige, Ihr eingebettetes Video oder Ihre Publikation zum ersten Mal gesehen hat, und so verhindern, dass derselbe Nutzer mehrfach auf verschiedenen Websites gezählt wird. Sie können dann die Private Aggregation API verwenden, um einen zusammenfassenden Bericht über die Reichweite zu erstellen.
Die Shared Storage API ist ein Privacy Sandbox-Angebot für allgemeine Zwecke, das viele mögliche Anwendungsfälle unterstützt. Die Private Aggregation API ist eine im freigegebenen Speicher verfügbare Ausgabe, mit der Sie websiteübergreifende Daten aggregieren können.
Unique Reach-Messung ausprobieren
Wenn Sie mit der Unique Reach-Messung mit gemeinsam genutztem Speicher und privater Aggregation experimentieren möchten, müssen Sie Chrome M107 oder höher verwenden. Alle APIs zum Datenschutz bei Werbung unter chrome://settings/adPrivacy
aktivieren.
Sie können freigegebenen Speicher auch mit dem Flag --enable-features=PrivacySandboxAdsAPIsOverride,OverridePrivacySandboxSettingsLocalTesting,SharedStorageAPI,FencedFrames
in der Befehlszeile aktivieren.
Mit Codebeispielen experimentieren
Möglicherweise möchten Sie erfassen, wie viele einzelne Nutzer Ihren Content auf verschiedenen Websites gesehen haben. In diesem Beispiel wird die Dimension „Content ID“ im Zusammenfassungsschlüssel (Bucket) codiert und die Anzahl wird als aggregierter Wert verwendet. Der zusammenfassende Bericht enthält Informationen wie „Ungefähr 391 Nutzer haben die Content-ID 123 gesehen“.
In diesem Beispiel:
* unique-reach-measurement.js
wird über einen Frame geladen und ist für das Laden des Shared Storage-Worklets verantwortlich.
* unique-reach-measurement-worklet.js
ist das Shared Storage-Worklet, das das Flag im freigegebenen Speicher prüft und einen Bericht über die Private Aggregation API sendet.
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 this.sharedStorage.get(key)) === 'true';
// Do not 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 via the Private Aggregation API
privateAggregation.contributeToHistogram({ bucket, value });
// Set the report submission status flag
await this.sharedStorage.set(key, true);
}
}
// Register the operation
register('reach-measurement', ReachMeasurementOperation);
Reagieren und Feedback geben
Das Angebot für den freigegebenen Speicher wird derzeit diskutiert und kann sich in Zukunft ändern. Wenn Sie diese API testen und Feedback haben, freuen wir uns darauf, von Ihnen zu hören.
- GitHub Lesen Sie den Vorschlag, stellen Sie Fragen und nehmen Sie an Diskussionen teil.
- Ankündigungen zur Shared Storage API: Sehen Sie sich frühere Ankündigungen in unserer Mailingliste an.
- Entwicklersupport: Hier kannst du Fragen stellen und an Diskussionen zum Privacy Sandbox-Entwicklersupport-Repository teilnehmen.