ב-iOS מגרסה 14.5 ואילך, Apple דורשת ממפתחים לקבל את הרשאת המשתמש באמצעות מסגרת App Tracking Transparency כדי לעקוב אחרי המשתמשים או לגשת למזהה הפרסום (IDFA) של המכשיר שלהם. פרטים נוספים זמינים במסמכי התיעוד של השימוש בנתונים ופרטיות המשתמשים ב-Apple ושל השקיפות לגבי מעקב אחר אפליקציות ב-Apple.
מוצרי Firebase המושפעים
ערכות ה-SDK של Firebase לא ניגשות ל-IDFA, אבל לחלק מהן יש שילובים עם Google Analytics שעשויים לכלול גישה ל-IDFA.
בטבלה הבאה מפורטים מוצרי Firebase שזמינים בפלטפורמות של Apple, ומוסבר איך הפונקציונליות של כל מוצר מושפעת אם אין גישה למזהה IDFA.
מוצר | ההשפעה אם לא ניתן לגשת למזהה IDFA |
---|---|
A/B Testing | חלק מנתוני הטירגוט (כמו נתונים דמוגרפיים) בשילוב של A/B Testing עם Google Analytics נגזרים מה-IDFA. באפליקציות שאין להן גישה ל-IDFA, הטירגוט הזה לא זמין. |
App Check | אין השפעה |
App Distribution | אין השפעה |
Authentication | אין השפעה על Authentication ועל ספקי Authentication מאינטראקציה ישירה (First-party), כמו כניסה באמצעות חשבון Google ואימות טלפוני. |
Crashlytics | אין השפעה. השילוב של Crashlytics עם Google Analytics שמספק נתוני תאונות ונתוני breadcrumbs בזמן אמת לא תלוי ב-IDFA. |
Dynamic Links | אין השפעה על הפונקציונליות של פתיחת קישורים. כשמשתמשים ב-Google Analytics, אי אפשר לשייך אירועי המרה מסוג קישור. |
Cloud Firestore | אין השפעה |
Cloud Functions | אין השפעה |
In-App Messaging | אין השפעה |
Firebase התקנות | אין השפעה |
InstanceID | אין השפעה |
Cloud Messaging | כשמשתמשים ב-Google Analytics עם Google Analytics, Google Analytics מתעד באופן אוטומטי חלק מאירועי ההמרה שקשורים ל-FCM. כדי לשייך את האירועים האלה למודעות, נדרשת גישה ל-IDFA. |
Firebase ML | אין השפעה |
Performance Monitoring | אין השפעה |
Remote Config | כשמשתמשים ב-Google Analytics, הערך Remote Config לא מאפשר להשתמש במאפייני משתמשים שנוצרו באופן אוטומטי לצורכי טירגוט בלי גישה ל-IDFA. |
Realtime Database | אין השפעה |
Cloud Storage | אין השפעה |
Vertex AI in Firebase | אין השפעה |
השילובים עם Firebase שהושפעו
בטבלה הבאה מפורטים מוצרים משולבים של Firebase שהושפעו מהמצב שבו אין גישה למזהה IDFA.
מוצר | ההשפעה אם לא ניתן לגשת למזהה IDFA |
---|---|
Google Analytics | הרישום ביומן של אירועי Analytics, הדיווח על אירועים ומדידת ההמרות לא מושפעים, אבל אם אין גישה ל-IDFA, יש לכך השפעה על השיוך. מידע נוסף על התגובה של Google ל-iOS 14 זמין בפוסט הזה בבלוג. |
בקשה להרשאת מעקב אחר אפליקציות ב-iOS 14
אם אתם רוצים לאפליקציה שלכם ל-Apple להיות גישה ל-IDFA, תוכלו להוסיף לאפליקציה את מסגרת App Tracking Transparency של Apple ולבקש הרשאה למעקב אחרי ה-IDFA של המשתמשים או לגישה אליו.
באפליקציות רבות מוצג מסך מקדים או מסך הסבר לפני הבקשה לקבלת הרשאה. במסך ההסבר תוכלו לספק למשתמשים מידע נוסף על האופן שבו אתם משתמשים ב-IDFA באפליקציה לפני ששולחים בקשה לגישה.
אם אתם בעלי אפליקציה ב-AdMob או ב-Ad Manager, מומלץ להשתמש ב-Funding Choices, שמאפשרת לקבל באופן אוטומטי הסכמה להצגת מודעות מותאמות אישית והסכמה למעקב אחר המשתמשים בהתאם להנחיות של Apple. פרטים נוספים זמינים בדף AdMob הסכמה באמצעות הודעות למשתמשים.
המדריך הבא מספק פתרון באמצעות Firebase In-App Messaging ליצירה ולהצגה של מסך הסבר לפני בקשת גישה למעקב באמצעות App Tracking Transparency.
הוספת In-App Messaging לאפליקציה
פועלים לפי ההוראות כדי להוסיף את In-App Messaging לאפליקציה של Apple.
טיפול בהסרת הודעות בתוך האפליקציה
קודם כול, מומלץ להימנע מהצגת המסך עם ההסבר במכשירים שלא יכולים להציג את תיבת הדו-שיח לבקשת הסכמה, כמו מכשירים עם מערכת iOS 13. חשוב לוודא שהקוד הזה מופעל מיד אחרי FirebaseApp.configure()
.
Swift
if NSClassFromString("ATTrackingManager") == nil {
// Avoid showing the App Tracking Transparency explainer if the
// framework is not linked.
InAppMessaging.inAppMessaging().messageDisplaySuppressed = true
}
מטמיעים את פרוטוקול InAppMessagingDisplayDelegate
כדי לטפל באירועים כשהמשתמש סוגר את המסך עם ההסבר. אם המשתמש מקייש על 'אישור', מציגים את ההנחיה של המערכת דרך מסגרת App Tracking Transparency.
Swift
// The InAppMessaging delegate must be assigned before events can be handled.
InAppMessaging.inAppMessaging().delegate = self
func messageClicked(_ inAppMessage: InAppMessagingDisplayMessage,
with action: InAppMessagingAction) {
switch action.actionText {
case "OK":
ATTrackingManager.requestTrackingAuthorization { status in
switch status {
case .authorized:
// Optionally, log an event when the user accepts.
Analytics.logEvent("tracking_authorized", parameters: nil)
case _:
// Optionally, log an event here with the rejected value.
}
}
case _:
// do nothing
}
}
יצירת קמפיין In-App Messaging
אחרי שמוסיפים את הקוד לאפליקציה, יוצרים הודעה באפליקציה במסוף Firebase.
- במסוף Firebase, יוצרים קמפיין In-App Messaging חדש.
- מאכלסים את ההודעות באפליקציה בתוכן הרצוי ומגדירים את ההודעה כך שתופעל באירוע
app_launch
. - בקטע טירגוט, מוודאים שהקמפיין מטרגט רק את הגרסה העדכנית ביותר של האפליקציה ואילך.
תוכלו להתאים אישית את המראה של מסך ההסבר לפי ההוראות שמפורטות במסמכי העזרה של In-App Messaging.
אופציונלי: בדיקת A/B של מסכים שונים עם הסברים
ל-In-App Messaging יש שילוב מובנה עם Firebase A/B Testing, שבעזרתו אפשר להתנסות במסכים שונים עם הסברים.
Firebase A/B Testing יוצרת באופן אוטומטי קבוצות ניסוי ומאפשרת לכם לראות באופן חזותי איך המשתמשים מקיימים אינטראקציה עם גרסאות שונות של האפליקציה.
תיעוד ההרשאות למעקב אחר האפליקציה
אם לא רשמתם אירוע Google Analytics בזמן הטיפול בתגובה לבקשת ההרשאה למעקב אחר האפליקציה, תצטרכו לעשות זאת כדי למדוד שינויים בשיעור התשובות כשאתם מריצים ניסוי A/B.
Swift
ATTrackingManager.requestTrackingAuthorization { status in
switch status {
case .authorized:
// Optionally, log an event when the user accepts.
Analytics.logEvent("tracking_authorized", parameters: nil)
case _:
// Optionally, log an event here with the rejected value.
}
}
יצירת אירוע המרה חדש
בקטע Analytics במסוף Firebase, עוברים לתפריט Conversions ומוסיפים אירוע המרה חדש עם אותו שם כמו האירוע שרשום ביומן באמצעות הקוד לדוגמה שלמעלה.
צור ניסוי חדש
בתפריט In-App Messaging של המסוף, לוחצים על New Experiment ופועלים לפי ההוראות במסכים שמופיעים.
- בקטע טירגוט, מוודאים שהקמפיין מטרגט רק את הגרסה העדכנית ביותר של האפליקציה ואילך.
- בקטע יעדים, בוחרים את אירוע ההמרה שיצרתם באמצעות הקוד לדוגמה שלמעלה, וגם את כל המדדים האחרים שאחריהם אתם רוצים לעקוב.
אחרי שתפרסמו את הניסוי, הוא יצטרך לאסוף נתונים במשך זמן מה כדי שיהיה אפשר להפיק ממנו תוצאות חותכות.
במסמכי התיעוד של Firebase A/B Testing מוסבר איך לעקוב אחרי ניסוי ולהשיק וריאנט מוצלח.