מדידת היקף החשיפה למשתמשים ייחודיים

הרבה יוצרים ומפרסמים של תוכן רוצים לדעת כמה אנשים ייחודיים צפו בתוכן שלהם. אתם יכולים להשתמש ב-Shared Storage כדי לתעד את הפעם הראשונה שמשתמש ראה את המודעה, הסרטון המוטמע או אתר החדשות שלכם, וכך למנוע ספירה כפולה של אותו משתמש באתרים שונים. לאחר מכן תוכלו להשתמש ב-Private Aggregation API כדי להפיק דוח סיכום של פוטנציאל החשיפה.

Shared Storage API הוא הצעה של ארגז החול לפרטיות לאחסון כללי באתרים שונים, שתומך במגוון תרחישי שימוש אפשריים. Private Aggregation API הוא פלט שזמין ב-Shared Storage ומאפשר לצבור נתונים מאתרים שונים. מידע נוסף על שיטות להטמעה של מדידת הנתונים האלה זמין בסקירה המפורטת בנושא היקף החשיפה.

כדאי לנסות מדידה של היקף החשיפה למשתמשים ייחודיים

כדי להתנסות במדידת פוטנציאל החשיפה הייחודי באמצעות אחסון משותף וצבירה פרטית, צריך לוודא שאתם משתמשים ב-Chrome מגרסה M107 ואילך. מפעילים את כל ממשקי ה-API לשמירה על פרטיות בפרסום בקטע chrome://settings/adPrivacy.

אפשר גם להפעיל את האחסון המשותף באמצעות הדגל --enable-features=PrivacySandboxAdsAPIsOverride,OverridePrivacySandboxSettingsLocalTesting,SharedStorageAPI,FencedFrames בשורת הפקודה.

התנסות בדוגמאות קוד

כדאי לעקוב אחרי מספר המשתמשים הייחודיים שראו את התוכן שלכם באתרים שונים. בדוגמה הזו, המאפיין 'מזהה תוכן' מקודד במפתח הצבירה (קטגוריה), והספירה משמשת כערך שניתן לצבור. דוח הסיכום יכיל מידע כמו "כ-391 משתמשים צפו בתוכן שמספרו 123".

בדוגמה הזו:

  • unique-reach-measurement.js נטען באמצעות מסגרת, והוא אחראי על טעינת ה-worklet של האחסון השיתופי.
  • unique-reach-measurement-worklet.js הוא ה-worklet של האחסון השיתופי שבודק את הדגל באחסון השיתופי ושולח דוח באמצעות Private Aggregation API.

reach-measurement.js

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();

reach-measurement-worklet.js

// 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);

יצירת מעורבות ושיתוף משוב

חשוב לזכור שההצעה ל-Shared Storage API נמצאת כרגע בשלבי פיתוח ודיון, ולכן היא כפופה לשינויים.

נשמח לשמוע את דעתכם על Shared Storage API.

אפשר להתעדכן

  • רשימת תפוצה: כדאי להירשם לרשימת התפוצה שלנו כדי לקבל את העדכונים וההודעות האחרונים שקשורים ל-Shared Storage API.

רוצה לקבל עזרה?