يُشار إليها أحيانًا باسم "عدد مرّات الظهور الفعّال"، وغالبًا ما يكون هناك حدّ أدنى لعدد المشاهدات قبل أن يتعرّف المستخدِم على محتوى معيّن أو يتذكره (غالبًا في سياق مشاهدات الإعلانات). يمكنك استخدام "مساحة التخزين المشتركة" لإنشاء تقارير عن المستخدِمين الفرديين الذين شاهدوا محتوى معيّنًا عددًا من المرّات لا يقلّ عن 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.
هل أنت بحاجة إلى مساعدة؟
- دعم المطوّرين: يمكنك التواصل مع مطوّرين آخرين والحصول على إجابات عن أسئلتك في مستودع دعم المطوّرين في "مبادرة حماية الخصوصية".