בהתאם למדיניות של Google בנושא הסכמת משתמשים באיחוד האירופי, אתם מחויבים להציג גילוי נאות בנושאים מסוימים למשתמשים שנמצאים באזור הכלכלי האירופי (EEA), בבריטניה ובשווייץ. בנוסף, אתם מחויבים לקבל את הסכמתם לשימוש בקובצי Cookie או באמצעים אחרים לאחסון מקומי של מידע, במקרים שבהם נדרשת הסכמה על פי חוק, וכן לקבל את הסכמתם לשימוש במידע אישי (כמו AdID) לצורך הצגת מודעות.
המדיניות הזו משקפת את הדרישות שמפורטות ב-ePrivacy Directive (הדירקטיבה בנושא פרטיות ותקשורת אלקטרונית) וב-General Data Protection Regulation (התקנות הכלליות להגנה על מידע, GDPR) של האיחוד האירופי.
במדריך הזה מפורטים השלבים הנדרשים כדי לתמוך בהודעה בנושא GDPR IAB TCF מגרסה 2 כחלק מ-UMP SDK. המדריך הזה מיועד לשימוש יחד עם המדריך תחילת העבודה, שכולל סקירה כללית של אופן ההפעלה של האפליקציה באמצעות UMP SDK והסבר על ההגדרות הבסיסיות של ההודעה. ההנחיות הבאות מתייחסות ספציפית להודעה לבקשת הסכמה בהתאם ל-GDPR בגרסה 2 של IAB TCF. מידע נוסף זמין במאמר בנושא איך הדרישות של IAB משפיעות על הודעות לבקשת הסכמה באיחוד האירופי.
דרישות מוקדמות
ביטול הסכמה
ה-GDPR מחייב ביטול הסכמה כדי לאפשר למשתמשים לבטל את הבחירות שלהם בנושא פרטיות בכל שלב. במאמר אפשרויות פרטיות מוסבר איך להטמיע דרך שבה המשתמשים יכולים לבטל את ההסכמה שלהם.
תג לציון משתמשים מתחת לגיל ההסכמה
כדי לציין אם משתמש מסוים הוא מתחת לגיל ההסכמה, צריך להגדיר את התג
setTagForUnderAgeOfConsent (TFUA). כשמגדירים את הערך TFUA ל-true, UMP SDK לא מבקש הסכמה מהמשתמש. אם לאפליקציה שלכם יש קהל בגילאים שונים, צריך להגדיר את הפרמטר הזה למשתמשים שהם ילדים כדי לוודא שלא תתבקש מהם הסכמה.
בדוגמה הבאה, הערך של TFUA מוגדר כ-true בבקשת הסכמה ב-UMP:
Java
ConsentRequestParameters params = new ConsentRequestParameters
.Builder()
// Indicate the user is under age of consent.
.setTagForUnderAgeOfConsent(true)
.build();
consentInformation = UserMessagingPlatform.getConsentInformation(this);
consentInformation.requestConsentInfoUpdate(
this,
params,
(OnConsentInfoUpdateSuccessListener) () -> {
// ...
},
(OnConsentInfoUpdateFailureListener) requestConsentError -> {
// ...
});
Kotlin
val params = ConsentRequestParameters
.Builder()
// Indicate the user is under age of consent.
.setTagForUnderAgeOfConsent(true)
.build()
consentInformation = UserMessagingPlatform.getConsentInformation(this)
consentInformation.requestConsentInfoUpdate(
this,
params,
ConsentInformation.OnConsentInfoUpdateSuccessListener {
// ...
},
ConsentInformation.OnConsentInfoUpdateFailureListener {
requestConsentError ->
// ...
})
גישור
כדי להוסיף את השותפים שמספקים לכם שירותים שקשורים לניהול תעבורה לרשימת שותפי הפרסום, פועלים לפי השלבים במאמר הוספת שותפי פרסום להודעות לבקשת הסכמה בהתאם ל-GDPR. אם לא תעשו את זה, יכול להיות שהשותפים לא יוכלו להציג מודעות באפליקציה שלכם.
יכול להיות שלשותפי התהליך לבחירת הרשת יש גם כלים נוספים שיעזרו לכם לפעול בהתאם לתקנות ה-GDPR. פרטים נוספים זמינים במדריך השילוב של שותף ספציפי.
איך קוראים את אפשרויות ההסכמה
אחרי איסוף ההסכמה בהתאם ל-GDPR, אפשר לקרוא את בחירות ההסכמה מהאחסון המקומי בהתאם למפרט של TCF בגרסה 2. המפתח IABTCF_PurposeConsents מציין את ההסכמה לכל אחת ממטרות TCF.
בקטע הקוד הבא אפשר לראות איך בודקים את ההסכמה למטרה 1:
Java
SharedPreferences sharedPref = PreferenceManager.getDefaultSharedPreferences(context);
// Example value: "1111111111"
String purposeConsents = sharedPref.getString("IABTCF_PurposeConsents", "");
// Purposes are zero-indexed. Index 0 contains information about Purpose 1.
if (!purposeConsents.isEmpty()) {
String purposeOneString = purposeConsents.charAt(0).toString();
boolean hasConsentForPurposeOne = purposeOneString.equals("1");
}
Kotlin
val sharedPref = PreferenceManager.getDefaultSharedPreferences(context)
// Example value: "1111111111"
val purposeConsents = sharedPref.getString("IABTCF_PurposeConsents", "")
// Purposes are zero-indexed. Index 0 contains information about Purpose 1.
if (purposeConsents?.isEmpty() == false) {
val purposeOneString = purposeConsents.first().toString()
val hasConsentForPurposeOne = purposeOneString == "1"
}
שאלות נפוצות
- מה יקרה אם לא אבצע פעולות כדי לעמוד בדרישות בנושא פלטפורמות לניהול הסכמה לצורך הצגת מודעות באזור הכלכלי האירופי, בבריטניה ובשווייץ?
החל מ-16 בינואר 2024, אם שותף לא ישתמש בפלטפורמה לניהול הסכמה שאושרה על ידי Google, תהיה אפשרות להציג רק מודעות מוגבלות בתנועה מהאזור הכלכלי האירופי (EEA) ומבריטניה.
נתחיל לאכוף את הדרישה ב-16 בינואר 2024 בקרב אחוז קטן מהתנועה באזור הכלכלי האירופי ובבריטניה, ונגיע לאכיפה מלאה בקרב כלל התנועה באזור הכלכלי האירופי ובבריטניה עד סוף פברואר 2024. כדי למנוע פגיעה במונטיזציה, חשוב להתחיל להשתמש בפלטפורמת CMP שאושרה עד 16 בינואר 2024.
- איך אפשר לבדוק אם המשתמש הביע הסכמה?
ההסכמה לא מיוצגת על ידי ביט יחיד, אלא על ידי קבוצה של מטרות וספקים, כפי שמוגדר במפרט של IAB TCF. כאן אפשר לקרוא על הקריטריונים של Google Ads להתאמה אישית.
בנוסף, ספקי טכנולוגיית פרסום שנכללים ברשימת ספקי טכנולוגיית הפרסום (ATP) של Google ולא רשומים ברשימת הספקים המשתתפים ב-TCF משתמשים במפרט הטכני של Google לגבי הסכמה נוספת כדי לאסוף הסכמה. Google מפרסמת את הרשימה של ספקי טכנולוגיות הפרסום שלא רשומים ב-IAB ואת המזהים שלהם במיקום הבא: https://storage.googleapis.com/tcfac/additional-consent-providers.csv.
כדי לנפות באגים במודעה בודדת, אפשר להשתמש בתכונה פתרון בעיות בהגדרות הפרטיות בכלי לבדיקת מודעות כדי לראות את אותות הפרטיות הבאים שמועברים בבקשה להצגת מודעה כחלק משילוב של בעלי תוכן דיגיטלי עם TCF של IAB Europe:
תווית של הכלי לבדיקת מודעות פרמטר שאילתה של בקשה להצגת מודעה משמעות ה-GDPR חל (IABTCF_gdprApplies) gdprהאם תקנות ה-GDPR חלות על הבקשה הזו להצגת מודעה. נתוני שקיפות והסכמה (IABTCF_TCString) gdpr_consentנתוני השקיפות וההסכמה. ה-IAB מספק כלי אינטרנטי שבו אפשר לפענח את הערך באופן ידני. נתוני הסכמה נוספים (IABTCF_AddtlConsent) addtl_consentמחרוזת ה-AC מהמפרט הטכני של Google בנושא הסכמה נוספת. מידע נוסף זמין במאמר בנושא קריאת בחירות בנושא הסכמה.
- האם צריך להשתמש ב-UMP SDK של Google כדי לעמוד בדרישה של פלטפורמת ה-CMP?
לא, אפשר להשתמש בכל פלטפורמת CMP שמופיעה ברשימת פלטפורמות ה-CMP שאושרו על ידי Google כדי להציג מודעות.
- איך אפשר להציג שוב את טופס ההסכמה באמצעות UMP SDK גם אם המשתמש כבר הביע הסכמה?
אם משתמש כבר הביע הסכמה, הפתרון של Google לניהול הסכמה לא יבקש לאסוף הסכמה חדשה עד שנתוני השקיפות וההסכמה יפוגו או יהפכו ללא תקפים.
ה-GDPR מחייב שינוי בהסכמה כדי לאפשר למשתמשים לבטל את בחירות ההסכמה שלהם בכל שלב. במאמר בנושא אפשרויות פרטיות מוסבר איך להטמיע דרך שבה המשתמשים יכולים לבטל את ההסכמה שלהם. כדי להציג שוב טופס הסכמה, מתקשרים אל
showPrivacyOptionsForm().- שילבתי פלטפורמת CMP שאושרה על ידי Google, אבל אני לא רואה בקשות להצגת מודעות שנשלחות לשותפי גישור, גם לא ממשתמשים שהביעו הסכמה. למה זה קורה?
בהתאם לדרישות של TCF, לפני ש-Google כוללת ספקי טכנולוגיית פרסום (ATP) ומקורות אחרים לביקוש פרוגרמטי ברשימת הרשתות בתהליך בחירת הרשת, אנחנו מוודאים שהם לא מפירים את מדיניות Google ושיש להם לפחות בסיס חוקי אחד לעיבוד נתונים. מידע נוסף זמין בקטע בנושא גישור.
חלק מהשותפים בתהליך בחירת הרשת שמופיעים ברשימת ספקי טכנולוגיית הפרסום (ATP) של Google לא רשומים ברשימת ספקי המשתתפים ב-TCF. במקום זאת, השותפים האלה משתמשים במפרט הטכני של Google בנושא הסכמה נוספת לאיסוף הסכמה. Google מפרסמת את הרשימה של ספקי טכנולוגיות הפרסום שלא רשומים ב-IAB ואת המזהים שלהם במיקום הבא: https://storage.googleapis.com/tcfac/additional-consent-providers.csv
ה-UMP SDK תומך בשמירת המחרוזת ACString, וכך מאפשר לכם להוסיף שותפי פרסום להודעות לבקשת הסכמה בהתאם ל-GDPR בלי שתצטרכו להבין אם השותפים רשומים ב-TCF. כשמשתמשים בפלטפורמת CMP של צד שלישי, צריך לבצע את הפעולות הבאות:
- מוודאים שהפלטפורמה לניהול ההסכמה של הצד השלישי תומכת באחסון של מחרוזת ה-AC.
- יש לכלול כל שותף למנגנון בחירת הרשת ברשימת ספקי טכנולוגיות הפרסום שפלטפורמת ה-CMP של הצד השלישי משתמשת בה כדי לאסוף הסכמה.
- האם אפשר לשנות את אופן הפעולה של האפליקציה אם המשתמשים לא מביעים הסכמה? האם זה מותר לפי המדיניות?
בעלי אפליקציות יכולים לקרוא את נתוני השקיפות וההסכמה של IAB TCF באפליקציות שלהם. במאמר איך קוראים את בחירות ההסכמה מוסבר איך לקרוא את בחירות ההסכמה באופן פרוגרמטי. בעלי תוכן דיגיטלי צריכים לבדוק עם יועצים משפטיים את המחויבויות שלהם בהתאם לתקנות הרלוונטיות.
- למה אני לא רואה מודעות כשאני בוחר באפשרות ניהול אפשרויות ומביע הסכמה לכל המטרות? למה זה קורה?
בנוסף להסכמה למטרות האיסוף, צריך גם לקבל הסכמה מהספקים. נדרשת הסכמה גם למטרות וגם לספקים כדי שספקים כמו Google יוכלו להציג מודעות מתאימות.
- איך מטמיעים את גרסה 2 של נתוני ההסכמה הנוספים אצל משתמשים שכבר הביעו הסכמה לגרסה 1?
כדי לבדוק אם משתמש הביע הסכמה לגרסה 2 של מחרוזת נתוני ההסכמה הנוספים (AC) ואם צריך להציג שוב את טופס ההסכמה, צריך לבדוק את המפתח
IABTCF_AddtlConsentבאחסון המקומי לפי המפרט הטכני של Google בנושא נתוני הסכמה נוספים.Java
SharedPreferences sharedPref = PreferenceManager.getDefaultSharedPreferences(context); // Example value: "2~1.35.41.101~dv.9.21.81" String additionalConsent = sharedPref.getString("IABTCF_AddtlConsent", ""); // Index 0 contains information about the specification version number. if (!additionalConsent.isEmpty()) { String specACVersion = additionalConsent.charAt(0); boolean isACVersion2 = purposeOneString.equals("2"); }Kotlin
val sharedPref = PreferenceManager.getDefaultSharedPreferences(context) // Example value: "2~1.35.41.101~dv.9.21.81" val additionalConsent = sharedPref.getString("IABTCF_AddtlConsent", "") // Index 0 contains information about the specification version number. if (!additionalConsent.isEmpty()) { val specACVersion = additionalConsent.first() val isACVersion2 = specACVersion == "2" }