Google UMP SDK: Внедряване на GDPR съгласие в мобилни игри с Unity
Защо мобилните игри се нуждаят от SDK за съгласие
Ако вашата игра показва реклами от AdMob, Ad Manager или медииран waterfall на играчи в Европейското икономическо пространство или Обединеното кралство, по закон сте задължени да получите валидно съгласие, преди да бъде използван какъвто и да е персонализиран рекламен или проследяващ идентификатор. Уеб банер за бисквитки не решава този проблем — нативните мобилни приложения нямат бисквитки, а съгласието трябва да достигне до рекламните SDK, които работят във вашия build.
Отговорът на Google е SDK на User Messaging Platform (UMP), слоят за съгласие, който се доставя с Google Mobile Ads SDK. Той представя форма за съгласие, съвместима с IAB TCF, съхранява изборите на играча и излага сигнал за съгласие, който AdMob и медиационните партньори четат автоматично. За студио на Unity правилното изпълнение на този поток е разликата между здравословен eCPM и вълна от санкции за нарушаване на правилата.
Потокът на съгласие от началото до края
Правилният ред на операциите има по-голямо значение от всяко отделно API повикване. При всяко стартиране на приложението трябва да:
- Заявите актуализация на информацията за съгласие. Това казва на UMP да провери региона на играча и дали се изисква форма.
- Заредите и покажете формата, ако се изисква. UMP решава дали да я покаже въз основа на географията и предишните избори — никога не кодирате твърдо „този потребител в ЕС ли е“.
- Изчакате затварянето на формата преди да инициализирате Mobile Ads SDK.
- Инициализирате реклами едва след събиране на съгласието, така че първата заявка за реклама вече да носи правилния сигнал.
Инициализирането на рекламния SDK преди връщането на формата за съгласие е най-честата грешка, която виждаме. Тя създава неперсонализирана или несъответстваща първа импресия и може да задейства автоматизирани прегледи на правилата.
Минимална имплементация в Unity
В C# скелетът изглежда така:
var request = new ConsentRequestParameters();
ConsentInformation.Update(request, (FormError error) => {
ConsentForm.LoadAndShowConsentFormIfRequired((FormError err) => {
if (ConsentInformation.CanRequestAds()) InitializeAds();
});
});
Проверката CanRequestAds() е вашата врата. Докато връща true — било защото играчът е дал съгласие, било защото се намира извън регулиран регион — можете да инициализирате и да заявявате реклами. Не кеширайте сами нищо за региона; нека UMP бъде единственият източник на истина.
Тестване без публикуване в магазина
Не можете да проверите поток на съгласие от офиса си, да речем в Истанбул, освен ако не симулирате устройство от ЕИП. UMP поддържа настройка за дебъг география и списък с хеширани идентификатори на тестови устройства:
- Регистрирайте хешираното ID на тестовото си устройство в параметрите на заявката.
- Принудете дебъг географията на
EEA, за да се появи формата. - Използвайте метода за нулиране на SDK между изпълненията, за да виждате всеки път изживяването при първо стартиране.
Винаги премахвайте настройките за дебъг преди производствен build. Изпращането на принудителен дебъг флаг за ЕИП до всеки играч е реален и неудобен инцидент.
Съгласие, медиация и вашите приходи
Когато съгласието се разпространява правилно, всяка мрежа във вашия медиационен стек — AdMob, Meta Audience Network, Unity Ads, AppLovin — получава TCF низа и може да наддава за персонализиран инвентар, където това е разрешено. Когато се повреди, тези мрежи преминават към неперсонализирани реклами на част от eCPM и вашият waterfall тихо губи приходи. Третирайте слоя за съгласие като част от вашия стек за монетизация, а не като последваща мисъл за съответствие.
Къде се вписва FlexyConsent
UMP покрива собствената повърхност на Google, но повечето сериозни издатели управляват съгласие едновременно в уеб ресурси, множество приложения и сървърно тагване. FlexyConsent ви дава единен запис за съгласие, TCF и Google Consent Mode v2 сигнали и анализ на нивата на съгласие на всяка платформа — така че изборът, който играч прави във вашата Unity игра, и изборът, който посетител прави на маркетинговия ви сайт, живеят на едно проверимо място. Съответствието става табло, а не пожарна тревога.
Ключови изводи
- Събирайте съгласие чрез UMP SDK преди да инициализирате Mobile Ads SDK.
- Никога не кодирайте твърдо логиката за региона — нека UMP реши кога се изисква форма.
- Тествайте с дебъг география и хеширани тестови идентификатори, след което ги премахнете преди издаване.
- Правилното разпространение на съгласието защитава eCPM на персонализираните ви реклами в целия медиационен стек.