قياس مدى الوصول إلى الجمهور بعدد مرّات ظهور أكبر من K

يُشار إليها أحيانًا باسم "عدد مرّات الظهور الفعّال"، وغالبًا ما يكون هناك حدّ أدنى لعدد المشاهدات قبل أن يتعرّف المستخدِم على محتوى معيّن أو يتذكره (غالبًا في سياق مشاهدات الإعلانات). يمكنك استخدام "مساحة التخزين المشتركة" لإنشاء تقارير عن المستخدِمين الفرديين الذين شاهدوا محتوى معيّنًا عددًا من المرّات لا يقلّ عن K.

Shared Storage API هي اقتراح من "مبادرة حماية الخصوصية" لمساحة تخزين عامة على مستوى المواقع الإلكترونية، وهي تتوافق مع العديد من حالات الاستخدام المحتملة. Private Aggregation API هي واجهة برمجة تطبيقات متاحة في Shared Storage تتيح لك تجميع البيانات على مستوى المواقع الإلكترونية.

تجربة قياس عدد مرّات الظهور الأكبر من حدّ معيّن

لتجربة قياس معدّل تكرار K+ باستخدام ميزة "مساحة التخزين المشتركة" وميزة "التجميع الخاص"، تأكَّد من استخدام الإصدار M107 من Chrome أو إصدار أحدث. فعِّل جميع واجهات برمجة التطبيقات "للخصوصية في عرض الإعلانات" ضمن chrome://settings/adPrivacy.

يمكنك أيضًا تفعيل ميزة "مساحة التخزين المشتركة" باستخدام العلامة --enable-features=PrivacySandboxAdsAPIsOverride,OverridePrivacySandboxSettingsLocalTesting,SharedStorageAPI,FencedFrames في سطر الأوامر.

تجربة عيّنات الرموز البرمجية

قد تحتاج إلى قياس عدد المستخدِمين الذين شاهدوا المحتوى الخاص بك عددًا معيّنًا من المرّات أو أكثر في موقع إلكتروني معيّن على مستوى مواقع إلكترونية مختلفة. في هذا المثال، تتم إضافة عدد مرات الظهور إلى مساحة التخزين المشتركة حيث يزداد بمقدار مرة واحدة عند تحميل المحتوى. عندما يصل عدد مرّات الظهور إلى 3، يتمّ استدعاء Private Aggregation API. يتم ترميز سمة معرّف المحتوى كمفتاح تجميع، ويتم استخدام العدد كقيمة قابلة للتجميع. سيقدّم التقرير التلخيصي معلومات مثل "شاهد 391 مستخدِمًا تقريبًا رقم تعريف الحملة الإعلانية 123 3 مرّات على الأقلّ".

في هذا المثال:

  • يتم تحميل k-frequency-measurement.js باستخدام إطار، وهو مسؤول عن تحميل وحدة عمل مساحة التخزين المشتركة.
  • k-frequency-measurement-worklet.js هي وحدة عمل مساحة التخزين المشتركة التي تقرأ عدد مرات الظهور في مساحة التخزين المشتركة وتُرسِل تقريرًا باستخدام Private Aggregation API.

k-frequency-measurement.js

async function injectContent() {
  // Load the Shared Storage worklet
  await window.sharedStorage.worklet.addModule('k-freq-measurement-worklet.js');

  // Run the K-frequency measurement operation
  await window.sharedStorage.run('k-freq-measurement', { data: { kFreq: 3, contentId: 123 });
}

injectContent();

kuency-measurement-worklet.js

// Learn more about noise and scaling from the Private Aggregation fundamentals
// documentation on Chrome blog
const SCALE_FACTOR = 65536;

/**
 * The bucket key must be a number, and in this case, it is just the content
 * ID itself. For more complex bucket key construction, see other use cases in
 * this demo.
 */
function convertContentIdToBucket(contentId) {
  return BigInt(contentId);
}

class KFreqMeasurementOperation {
  async run(data) {
    const { kFreq, contentId } = data;

    // Read from Shared Storage
    const hasReportedContentKey = 'has-reported-content';
    const impressionCountKey = 'impression-count';
    const hasReportedContent = (await sharedStorage.get(hasReportedContentKey)) === 'true';
    const impressionCount = parseInt((await sharedStorage.get(impressionCountKey)) || 0);

    // Don't report if a report has been sent already
    if (hasReportedContent) {
      return;
    }

    // Check impression count against frequency limit
    if (impressionCount < kFreq) {
      await sharedStorage.set(impressionCountKey, impressionCount + 1);
      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(hasReportedContentKey, 'true');
  }
}

// Register the operation

register('k-freq-measurement', KFreqMeasurementOperation); \

التفاعل مع الملاحظات ومشاركتها

يُرجى العِلم أنّ اقتراح Shared Storage API قيد المناقشة والتطوير بشكل نشط، وبالتالي يخضع للتغيير.

يسرّنا معرفة رأيك بشأن Shared Storage API.

الاطّلاع على آخر الأخبار

  • القائمة البريدية: يمكنك الاشتراك في قائمتنا البريدية لتلقّي آخر الأخبار والإشعارات المتعلّقة بواجهة برمجة التطبيقات Shared Storage API.

هل أنت بحاجة إلى مساعدة؟