طبق خطمشی Google درخصوص موافقت کاربر اتحادیه اروپا، باید افشاگریهای خاصی را به کاربران خود در منطقه اقتصادی اروپا (EEA)، پادشاهی متحد (UK)، و سوئیس ارائه دهید و برای استفاده از کوکیها یا دیگر فضاهای ذخیرهسازی محلی (در جاهایی که قانون الزام میکند) و برای استفاده از دادههای شخصی (مثل AdID) برای ارائه آگهی، رضایت آنها را کسب کنید.
این خطمشی منعکسکننده الزامات «آییننامه حریم خصوصی الکترونیکی اتحادیه اروپا» و «مقررات کلی حفاظت از دادهها» (GDPR) است.
این راهنما مراحل لازم برای پشتیبانی از پیام «کسب موافقت با مقررات کلی حفاظت از داده» IAB TCF نسخه ۲ را بهعنوان بخشی از «کیت توسعه نرمافزار UMP» شرح میدهد. این راهنما برای جفت شدن با شروع به کار درنظر گرفته شده است که نمای کلی از نحوه اجرای برنامه با «کیت توسعه نرمافزار پلاتفرم پیامرسانی کاربر» و اصول اولیه راهاندازی پیام ارائه میدهد. راهنماییهای زیر مختص پیام «کسب موافقت با مقررات کلی حفاظت از داده» IAB TCF v2 است. برای اطلاعات بیشتر، به نحوه تأثیر الزامات IAB بر پیامهای موافقت اتحادیه اروپا مراجعه کنید.
پیشنیازها
ابطال رضایت
«مقررات کلی حفاظت از داده» لغو موافقت را الزامی میکند تا به کاربران امکان دهد انتخابهای موافقت خود را در هر زمانی پس بگیرند. برای پیادهسازی روشی که کاربران بتوانند انتخابهای رضایت خود را پس بگیرند، گزینههای حریم خصوصی را ببینید.
برچسب برای زیر سن قانونی
برای نشان دادن اینکه کاربر زیر سن رضایت است یا نه،
tagForUnderAgeOfConsent (TFUA) را تنظیم کنید. وقتی TFUA را روی true تنظیم میکنید، UMP SDK
از کاربر درخواست موافقت نمیکند. اگر برنامه شما مخاطب مختلط دارد، این پارامتر را برای کاربران کودک تنظیم کنید تا مطمئن شوید رضایت درخواست نمیشود.
مثال زیر TFUA را در درخواست موافقت UMP روی درست تنظیم میکند:
Swift
// Create a UMPRequestParameters object.
let parameters = RequestParameters()
// Indicate the user is under age of consent.
parameters.isTaggedForUnderAgeOfConsent = true
// Request an update for the consent information.
ConsentInformation.shared.requestConsentInfoUpdate(with: parameters) {
[weak self] requestConsentError in
guard let self else { return }
// ...
}
آبجکتیو-سی
// Create a UMPRequestParameters object.
UMPRequestParameters *parameters = [[UMPRequestParameters alloc] init];
// Indicate the user is under age of consent.
parameters.tagForUnderAgeOfConsent = YES;
// Request an update for the consent information.
[UMPConsentInformation.sharedInstance
requestConsentInfoUpdateWithParameters:parameters
completionHandler:^(NSError *_Nullable requestConsentError) {
// ...
}];
راهاندازی موافقت در «واسطهگری AdMob»
برای راهاندازی موافقت در «واسطهگری AdMob»، مراحل بخشهای زیر را تکمیل کنید.
افزودن شرکای آگهی به پیامهای «مقررات کلی حفاظت از داده»
مراحل موجود در افزودن شرکای آگهی به پیامهای «مقررات کلی حفاظت از داده» منتشرشده را دنبال کنید تا شرکای واسطهگری خود را به فهرست شرکای آگهی اضافه کنید. انجام ندادن این کار میتواند باعث شود شرکا نتوانند آگهیها را در برنامه شما ارائه کنند.
جدول زیر نام شریک فناوری تبلیغات را برای هر منبع آگهی فهرست میکند:
| منبع آگهی | نام شریک فناوری تبلیغات |
|---|---|
| AppLovin | AppLovin Corp. |
| BidMachine | BidMachine |
| کیت توسعه نرمافزار آگهیهای BIGO | Empathy Technology Pte.Ltd. (BIGO Ads) |
| Chartboost | Chartboost |
| DT Exchange | DT Exchange (درآمدزایی Fyber) |
| i-mobile | i-mobile |
| InMobi | InMobi |
| آگهیهای ironSource | ironSource Mobile |
| درآمدزایی Liftoff | Liftoff |
| LY Ads Network | LY Ads Network |
| مه | مه |
| شبکه مخاطبان Meta | Meta |
| Mintegral | Mobvista/Mintegral |
| کیت توسعه نرمافزار آگهیهای Moloco | آگهیهای Moloco |
| myTarget | Mail.Ru |
| Pangle | Pangle DSP |
| PubMatic OpenWrap SDK | PubMatic |
| Unity Ads | Unity Ads |
| Verve HyBid SDK | گروه Verve |
ارسال موافقت به منابع آگهی
جدول زیر نشان میدهد کدام منابع آگهی از انتقال سیگنالهای موافقت «مقررات عمومی حفاظت از دادهها» از پلاتفرمهای مدیریت موافقت که با «چارچوب شفافسازی و کسب رضایت» (TCF) سازمان تبلیغات تعاملی در اروپا ادغام میشوند و مشخصات «موافقت اضافی Google» به «کیت توسعه نرمافزار» منابع آگهی پشتیبانی میکنند:
| منبع آگهی | حداقل نسخه پشتیبانیشده |
|---|---|
| AppLovin | 12.0.0.0 |
| BidMachine | 3.4.0.0 |
| کیت توسعه نرمافزار آگهیهای BIGO | 5.0.6.0 |
| Chartboost | 9.13.0.0 |
| DT Exchange | 8.3.1.0 |
| i-mobile | نامشخص۱ |
| InMobi | 10.7.5.0 |
| آگهیهای ironSource | 7.7.0.0 |
| درآمدزایی Liftoff | 7.4.1.0 |
| LY Ads Network | نامشخص۱ |
| مه | نامشخص۱ |
| شبکه مخاطبان Meta | N/A۲ |
| Mintegral | 7.7.9.0 |
| کیت توسعه نرمافزار آگهیهای Moloco | 3.5.0.0 |
| myTarget | 5.45.0.1 |
| Pangle | 7.9.0.6.0 |
| PubMatic OpenWrap SDK | 4.7.0.0 |
| Unity Ads | 4.19.0.1 |
| Verve HyBid SDK | 3.7.1.1 |
۱ منبع آگهی ترافیک «منطقه اقتصادی اروپا» را ارائه نمیدهد.
۲ برای جزئیات، با مدیر شریک Meta خود تماس بگیرید.
نحوه خواندن انتخابهای کسب رضایت
پساز جمعآوری موافقت «مقررات عمومی حفاظت از دادهها»، میتوانید انتخابهای موافقت را از فضای ذخیرهسازی محلی با پیروی از مشخصات TCF v2 بخوانید.
کلید IABTCF_PurposeConsents موافقت برای هریک از اهداف TCF را نشان میدهد.
تکهکد زیر نحوه بررسی موافقت برای «هدف ۱» را نشان میدهد:
Swift
// Example value: "1111111111"
let purposeConsents = UserDefaults.standard.string(forKey: "IABTCF_PurposeConsents")
// Purposes are zero-indexed. Index 0 contains information about Purpose 1.
let hasConsentForPurposeOne = purposeConsents?.first == "1"
آبجکتیو-سی
// Example value: "1111111111"
NSString *purposeConsents = [NSUserDefaults.standardUserDefaults
stringForKey:@"IABTCF_PurposeConsents"];
// Purposes are zero-indexed. Index 0 contains information about Purpose 1.
BOOL hasConsentForPurposeOne = [purposeConsents hasPrefix:@"1"];
پرسشگان
- اگر برای برآورده کردن الزامات پلاتفرم مدیریت کسب رضایت برای ارائه آگهی در منطقه اقتصادی اروپا، بریتانیا، و سوئیس اقدامی نکنم چه اتفاقی میافتد؟
از ۱۶ ژانویه ۲۰۲۴، اگر شریکی CMP دارای گواهی Google را اتخاذ نکند، فقط آگهیهای محدود برای ارائه در ترافیک منطقه اقتصادی اروپا و پادشاهی متحد واجدشرایط خواهد بود.
اجرای این طرح از ۱۶ ژانویه ۲۰۲۴ روی درصد کمی از ترافیک منطقه اقتصادی اروپا و پادشاهی متحد آغاز میشود و تا زمانی که Google آن را روی همه ترافیک منطقه اقتصادی اروپا و پادشاهی متحد تا پایان فوریه ۲۰۲۴ اجرا کند، افزایش خواهد یافت. تا ۱۶ ژانویه ۲۰۲۴ یک CMP تأییدشده داشته باشید تا مطمئن شوید درآمدزایی شما تحت تأثیر قرار نمیگیرد.
- چگونه میتوانم بررسی کنم که آیا کاربر موافقت کرده است یا نه؟
رضایت با یک بیت واحد نشان داده نمیشود، بلکه با مجموعهای از اهداف و فروشندگان که در مشخصات IAB TCF تعریف شدهاند نشان داده میشود. برای معیارهای شخصیسازی Google Ads، خطمشیهای موافقت: آگهیهای شخصیسازیشده و غیرشخصیسازیشده را ببینید.
علاوهبراین، فناوریهای تبلیغات در فهرست ارائهدهندگان فناوری تبلیغات (ATP) در Google که در فهرست فروشندگان TCF ثبت نشدهاند از مشخصات فنی «موافقت اضافی Google» برای جمعآوری موافقت استفاده میکنند. Google فهرست ارائهدهندگان فناوری تبلیغات ثبتنشده در «اداره تبلیغات تعاملی» و شناسههای آنها را در مکان زیر منتشر میکند: https://storage.googleapis.com/tcfac/additional-consent-providers.csv.
برای اشکالزدایی درخواست آگهی تکی، از ویژگی عیبیابی تنظیمات حریم خصوصی در بازرس آگهی استفاده کنید تا نشانهای حریم خصوصی زیر را که در درخواست آگهی بهعنوان بخشی از ادغام ناشر با «چارچوب رضایت و شفافیت اداره تبلیغات تعاملی اروپا» ارسال شده است مشاهده کنید:
برچسب بازرس آگهی پارامتر پُرسمان درخواست آگهی معنی «مقررات کلی حفاظت از داده» اعمال میشود (IABTCF_gdprApplies) gdprآیا «مقررات کلی محافظت از داده» برای این درخواست آگهی اعمال میشود یا نه. رشته TC (IABTCF_TCString) gdpr_consentرشته «شرایط خدمات». «دفتر تبلیغات تعاملی» ابزار وبی ارائه میدهد که در آن میتوانید مقدار را بهصورت دستی رمزگشایی کنید. رشته AC (IABTCF_AddtlConsent) addtl_consentرشته AC از مشخصات فنی «موافقت اضافی Google». برای خواندن انتخابهای موافقت بهصورت برنامهریزیشده، برای اطلاعات بیشتر به نحوه خواندن انتخابهای موافقت مراجعه کنید.
- آیا برای برآورده کردن الزامات CMP باید از «کیت توسعه نرمافزار پلاتفرم پیامرسانی کاربر» Google استفاده کنم؟
نه، میتوانید از هریک از «پلاتفرمهای مدیریت رضایت» موجود در فهرست «پلاتفرمهای مدیریت رضایت» دارای گواهینامه Google برای ارائه آگهی استفاده کنید.
- چگونه میتوانم فرم موافقت را بااستفاده از «کیت توسعه نرمافزار UMP» دوباره نمایش دهم، حتی اگر کاربر قبلاً موافقت کرده باشد؟
اگر کاربری قبلاً تصمیم موافقت را گرفته باشد، راهکار مدیریت موافقت Google تا زمانی که رشته TC منقضی شود یا بهنحوی نامعتبر شود، درخواست جمعآوری موافقت جدید نخواهد کرد.
«مقررات عمومی حفاظت از دادهها» (GDPR) اصلاح موافقت را الزامی میکند تا به کاربران اجازه دهد در هر زمانی انتخابهای موافقت خود را پس بگیرند. برای پیادهسازی روشی که کاربران بتوانند انتخابهای رضایت خود را پس بگیرند، گزینههای حریم خصوصی را ببینید. برای نمایش مجدد فرم موافقت، با
presentPrivacyOptionsFormFromViewController:completionHandler:تماس بگیرید.- «پلاتفرم مدیریت موافقتهای» گواهیشده ازسوی Google را یکپارچه کردم، اما نمیبینم که درخواست آگهیای به شرکای واسطهگری ارسال شود، حتی از کاربرانی که موافقت کردهاند. علت آن چیست؟
تحت «چارچوب رضایت شفافیت»، Google بررسی میکند که ارائهدهندگان فناوری تبلیغات و دیگر منابع تقاضای برنامهریزیشده خطمشی Google را نقض نکنند و حداقل یک مبنای قانونی برای پردازش دادهها قبلاز افزودن آنها به آبشار میانجیگری داشته باشند. برای کسب اطلاعات بیشتر، به بخش میانجیگری پیمایش کنید.
برخیاز شرکای واسطهگری در فهرست «ارائهدهندگان فناوری تبلیغات» (ATP) Google در فهرست فروشندگان «چارچوب رضایت شفافیت» ثبت نشدهاند. این شرکا درعوض از مشخصات فنی «موافقت اضافی Google» برای جمعآوری موافقت استفاده میکنند. Google فهرست ارائهدهندگان فناوری تبلیغات ثبتنشده در «اداره تبلیغات تعاملی» و شناسههای آنها را در مکان زیر منتشر میکند: https://storage.googleapis.com/tcfac/additional-consent-providers.csv
«کیت توسعه نرمافزار UMP» از ذخیره کردن ACString پشتیبانی میکند و به شما امکان میدهد شرکای آگهی را به پیامهای «مقررات عمومی حفاظت از داده» منتشرشده اضافه کنید بدون اینکه نیاز باشد بفهمید شرکا در TCF ثبت شدهاند یا نه. هنگام استفاده از پلاتفرم مدیریت موافقت طرف سوم، باید کارهای زیر را انجام دهید:
- تأیید کنید که «پلاتفرم مدیریت موافقت» طرف سوم از ذخیره کردن ACString پشتیبانی میکند.
- هر شریک واسطهگری را در فهرست ارائهدهندگان فناوری آگهی که «پلاتفرم مدیریت رضایتهای» طرف سوم برای جمعآوری رضایت استفاده میکند اضافه کنید.
- اگر کاربران موافقت نکنند، آیا میتوانم عملکرد برنامهام را تغییر دهم؟ آیا این کار ازنظر خطمشی مجاز است؟
ناشران میتوانند رشته IAB TCF را در برنامههایشان بخوانند. برای کسب اطلاعات درباره خواندن انتخابهای موافقت بهصورت برنامهریزیشده، نحوه خواندن انتخابهای موافقت را ببینید. ناشران باید تعهدات خود را تحت مقررات مربوطه با مشاوره حقوقی بررسی کنند.
- وقتی مدیریت گزینهها را انتخاب میکنم و با همه اهداف موافقت میکنم، هیچ آگهیای نمیبینم؟ علت آن چیست؟
علاوهبر جمعآوری رضایت برای اهداف، باید رضایت فروشنده را نیز جمعآوری کنید. برای اینکه هر فروشندهای، مثل Google، بتواند آگهیهای مناسب را ارائه کند، هم رضایت هدف و هم رضایت فروشنده لازم است.
- بهترین رویه برای نمایش هم هشدار iOS ATT و هم موافقت «مقررات کلی حفاظت از داده» به یک کاربر چیست؟
توصیه میکنیم اگر کاربر با «مقررات کلی حفاظت از داده» موافقت کرد، ابتدا پیام موافقت با «مقررات کلی حفاظت از داده» و سپس هشدار iOS ATT را نمایش دهید. اگر هر دو پیام را در «میانای کاربری AdMob» پیکربندی کنید، کیت توسعه نرمافزار UMP ازقبل این کار را انجام میدهد. برای اطلاعات بیشتر، کاربرانتان کدام پیام را خواهند دید را ببینید.
اگر هشدار ATT را بااستفاده از «کیت توسعه نرمافزار UMP» نشان نمیدهید، توصیه میکنیم پساز جمعآوری موافقت «مقررات عمومی حفاظت از دادهها» (GDPR)، انتخابهای موافقت را بخوانید تا مشخص شود آیا هشدار iOS ATT نشان داده شود یا نه.
- چگونه نسخه ۲ رشته AC را برای کاربرانی که قبلاً با نسخه ۱ موافقت کردهاند پیادهسازی کنم؟
کلید
IABTCF_AddtlConsentرا در فضای ذخیرهسازی محلی براساس مشخصات فنی «رضایت اضافی Google» بررسی کنید تا مشخص شود کاربر با نسخه ۲ «رشته AC» موافقت کرده است یا نه و آیا لازم است فرم موافقت را دوباره نشان دهید یا نه.Swift
// Example value: "2~1.35.41.101~dv.9.21.81" let additionalConsent = UserDefaults.standard.string(forKey: "IABTCF_AddtlConsent") // Index 0 contains information about the specification version number. let isACVersion2 = additionalConsent?.first == "2"آبجکتیو-سی
// Example value: "2~1.35.41.101~dv.9.21.81" NSString *additionalConsent = [NSUserDefaults.standardUserDefaults stringForKey:@"IABTCF_AddtlConsent"]; // Index 0 contains information about the specification version number. BOOL isACVersion2 = [additionalConsent hasPrefix:@"2"];