כדי לקבל מידע על נקודות מרכזיות בהכנת האפליקציה לשינויים בפרטיות ב-iOS, אפשר לעיין במאמר אסטרטגיות לשמירה על הפרטיות ב-iOS.
הפעלת SKAdNetwork למעקב אחרי המרות
דרישות מוקדמות: Google Mobile Ads SDK בגרסה 7.64.0 ומעלה
Google Mobile Ads SDK תומך במעקב המרות באמצעות SKAdNetwork של אפל, שמאפשר ל-Google ולקונים של צד שלישי שמשתתפים בתוכנית לשייך התקנת אפליקציה, גם כאשר ה-IDFA לא זמין.
כדי להפעיל את היכולת הזו, צריך לעדכן את המפתח SKAdNetworkItems באמצעות מילון נוסף שמגדיר את ערכי SKAdNetworkIdentifier של Google ושל הקניינים החיצוניים שמשתתפים בבידינג בקובץ Info.plist.
הדוגמה הבאה כוללת את Google (cstr6suwn9.skadnetwork) ומזהי SKAdNetwork של קונים נוספים שנבחרו וסופקו ל-Google. Google מחויבת לעדכן את הרשימה הזו כדי לכלול קונים נוספים, ולעבוד עם התעשייה על פתרונות לשיתוף ערכי SKAdNetworkIdentifier באופן נרחב יותר. בדף הזה מופיעים העדכונים האחרונים.
<key>SKAdNetworkItems</key>
<array>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>cstr6suwn9.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>4fzdc2evr5.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>2fnua5tdw4.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>ydx93a7ass.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>p78axxw29g.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>v72qych5uu.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>ludvb6z3bs.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>cp8zw746q7.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>3sh42y64q3.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>c6k4g5qg8m.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>s39g8k73mm.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>wg4vff78zm.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>3qy4746246.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>f38h382jlk.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>hs6bdukanm.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>mlmmfzh3r3.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>v4nxqhlyqp.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>wzmmz9fp6w.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>su67r6k2v3.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>yclnxrl5pm.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>t38b2kh725.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>7ug5zh24hu.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>gta9lk7p23.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>vutu7akeur.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>y5ghdn5j9k.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>v9wttpbfk9.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>n38lu8286q.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>47vhws6wlr.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>kbd757ywx3.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>9t245vhmpl.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>a2p9lx4jpn.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>22mmun2rn5.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>44jx6755aq.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>k674qkevps.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>4468km3ulz.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>2u9pt9hc89.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>8s468mfl3y.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>klf5c3l5u5.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>ppxm28t8ap.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>kbmxgpxpgc.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>uw77j35x4d.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>578prtvx9j.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>4dzt52r2t5.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>tl55sbb4fm.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>c3frkrj4fj.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>e5fvkxwrpn.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>8c4e2ghe7u.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>3rd42ekr43.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>97r2b46745.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>3qcr597p9d.skadnetwork</string>
</dict>
</array>
גישור
אם אתם משתמשים בתהליך בחירת הרשת, כדאי לבדוק את המסמכים של כל שותף ברשת המודעות כדי לראות אם יש ערכים נוספים של SKAdNetworkIdentifier שנדרשים.
אם מקור המודעות לא מופיע ברשימה, פנו לצוות ניהול החשבון כדי לקבל את ערכי ה-SKAdNetworkIdentifier הנדרשים.
בקשת הרשאה לשקיפות במעקב אחר אפליקציות (ATT)
דרישות מוקדמות: Google Mobile Ads SDK בגרסה 7.64.0 ומעלה
כדי להציג את בקשת ההרשאה של App Tracking Transparency לגישה ל-IDFA, צריך לעדכן את Info.plist כדי להוסיף את המפתח NSUserTrackingUsageDescription עם הודעה בהתאמה אישית שמתארת את השימוש שלכם. הנה דוגמה לטקסט תיאור:
<key>NSUserTrackingUsageDescription</key>
<string>This identifier will be used to deliver personalized ads to you.</string>

תיאור השימוש מופיע בתיבת הדו-שיח של App Tracking Transparency:

כדי להציג את בקשת ההרשאה, מפעילים את requestTrackingAuthorizationWithCompletionHandler:.
מומלץ להמתין להשלמת הקריאה החוזרת (callback) לפני שטוענים מודעות, כדי שאם המשתמש יעניק את ההרשאה של App Tracking Transparency, ערכת ה-Google Mobile Ads SDK תוכל להשתמש ב-IDFA בבקשות להצגת מודעות.
Swift
@available(iOS 14, *)
private func requestIDFA() {
ATTrackingManager.requestTrackingAuthorization { status in
// Tracking authorization completed. Start loading ads here.
}
}
Objective-C
- (void)requestIDFA {
if (@available(iOS 14, *)) {
[ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(
ATTrackingManagerAuthorizationStatus status){
// Tracking authorization completed. Start loading ads here.
}];
}
}
מידע נוסף על ערכי הסטטוס האפשריים זמין במאמר ATTrackingManager.AuthorizationStatus.
SKOverlay
דרישות מוקדמות: Google Mobile Ads SDK בגרסה 8.5.0 ומעלה
SKOverlay מציג אפליקציה מומלצת כשכבת-על מעל מודעה, כך שהמשתמשים יכולים להתקין אותה בלי לצאת מהאפליקציה שלכם.
אם אתם משתמשים ב-Google Mobile Ads SDK בגרסה 8.5.0 ואילך, אתם לא צריכים לעשות שום דבר כדי להפעיל את SKOverlay באפליקציה. כשהשימוש ב-SKOverlay משפר את הביצועים של המודעות, המערכת משפרת אותן באופן אוטומטי.
דומיינים שמוגבלים לאפליקציה
ביוני 2020, אפל הציגה את הדומיינים שמוגבלים לאפליקציה כתכונה שמפתחים יכולים להצטרף אליה כדי להגביל את הדומיינים לכל WKWebView באפליקציה ל-10 או פחות, באמצעות המפתח WKAppBoundDomains Info.plist.
אם מוסיפים את המפתח WKAppBoundDomains לקובץ Info.plist, יכול להיות ש-Google Mobile Ads SDK לא יצליח לטעון מודעות.
מזהה ישיר מבעל התוכן הדיגיטלי
דרישות מוקדמות: Google Mobile Ads SDK 10.14.0 ואילך
בגרסה Google Mobile Ads SDK הוספנו את המזהה הישיר מבעל התוכן הדיגיטלי, שעוזר להציג מודעות בהתאמה אישית שרלוונטיות יותר למשתמשים על סמך הנתונים שנאספו מהאפליקציות שלכם.
מזהה ישיר מבעל התוכן הדיגיטלי מופעל כברירת מחדל, אבל אפשר להשבית אותו באמצעות השיטה הבאה.
Swift
// Disables Publisher first-party ID.
MobileAds.shared.requestConfiguration.setPublisherFirstPartyIDEnabled(false)
Objective-C
// Disables Publisher first-party ID.
[GADMobileAds.sharedInstance.requestConfiguration setPublisherFirstPartyIDEnabled:NO];