תמיכה ב-iOS 14

ב-iOS 14.5, Apple דורשת ממפתחים לקבל הרשאת המשתמש דרך App Tracking Transparency כדי לעקוב אחריהן או לגשת מזהה הפרסום של המכשיר (IDFA). צפייה מדיניות המשתמשים בנושא פרטיות המשתמשים ושימוש בנתונים של Apple וגם שקיפות לגבי המעקב אחר אפליקציות של Apple לקבלת פרטים נוספים.

המוצרים המושפעים ב-Firebase

לערכות Firebase SDK אין גישה ל-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 ישירים, כמו כניסה באמצעות חשבון Google ואימות טלפון.
Crashlytics אין השפעה. השילוב של Crashlytics עם Google Analytics שמספק נתוני קריסה ונתיבי ניווט בזמן אמת, אינו תלוי IDFA.
Dynamic Links אין השפעה על פונקציונליות של פתיחת קישורים. בשימוש עם Google Analytics, השיוך (Attribution) של אירועי המרה מסוג קישור הוא לא זמין.
Cloud Firestore אין השפעה
Cloud Functions אין השפעה
In-App Messaging אין השפעה
Firebase התקנות אין השפעה
מזהה מופע אין השפעה
Cloud Messaging כשמשתמשים ב-Google Analytics עם Google Analytics, Google Analytics מתעד באופן אוטומטי חלק מאירועי ההמרה שקשורים ל-FCM. Attribution לאירועים האלה נדרשת גישה ל-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 רישום ביומן של אירועים, דיווח על אירועים ומעקב המרות לא מושפעים, אבל השיוך (Attribution) יושפע אם אין גישה ל-IDFA. מידע נוסף על התגובה של Google ל-iOS 14 זמין בפוסט הזה בבלוג.

בקשה להרשאת מעקב אחר אפליקציות ב-iOS 14

אם רוצים שלאפליקציה ב-Apple תהיה גישה ל-IDFA, אפשר להוסיף App Tracking Transparency framework של Apple לאפליקציה שלך ומבקשים הרשאה כדי לעקוב אחרי המשתמשים או לגשת אליהם IDFA.

באפליקציות רבות מוצג מסך מקדים או מסך הסבר לפני הבקשה לקבלת הרשאה. מסך ההסבר מאפשר לכם לתת למשתמשים הקשר על האופן שבו האפליקציה משתמשת ב-IDFA לפני בקשת הגישה.

אם יש לך אפליקציה ב-AdMob או ב-Ad Manager, כדאי לך לשקול Funding Choices, שמטפל בקבלת הסכמה כדי להציג מודעות בהתאמה אישית גם כהסכמה למעקב אחר המשתמש בהתאם להנחיות של Apple באופן אוטומטי. לצפייה AdMob 'הסכמה' עם הדף 'העברת הודעות למשתמשים' אפשר לקבל פרטים נוספים.

במדריך הבא תמצאו פתרון באמצעות Firebase In-App Messaging ליצירה וליצירה הצגת מסך הסבר לפני בקשת גישה למעקב דרך שקיפות לגבי המעקב אחר אפליקציות.

הוספה של 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.

  1. במסוף Firebase, יוצרים קמפיין In-App Messaging חדש.
  2. מאכלסים את ההודעות באפליקציה בתוכן הרצוי ומגדירים את ההודעה כך שתופעל באירוע app_launch.
  3. בקטע טירגוט, מוודאים שהקמפיין מטרגט רק את הגרסה העדכנית ביותר של האפליקציה ואילך.

כדי להתאים אישית את המראה של מסך ההסבר, פועלים לפי השלבים הבאים: בהוראות מסמכי תיעוד של 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, יש לנווט לתפריט המרות ולאחר מכן להוסיף אירוע המרה עם שם שזהה לשם האירוע שתועד באמצעות הקוד לדוגמה למעלה.

צור ניסוי חדש

במסוף התפריט In-App Messaging, לוחצים על ניסוי חדש ופועלים לפי ההוראות במסכים שונים.

  • בקטע טירגוט, מוודאים שהקמפיין מטרגט רק את רוב האפשרויות. בגרסה האחרונה של האפליקציה ואילך.
  • בקטע יעדים, בוחרים את אירוע ההמרה שיצרתם עם הקוד לדוגמה שלמעלה, וגם כל מדד אחר שאחריו רוצים לעקוב.

לאחר פרסום הניסוי, יהיה עליו לאסוף נתונים עבור חלק מהניסוי זמן לפני שהוא יכול להניב תוצאות חד-משמעיות.

במסמכי התיעוד של Firebase A/B Testing מוסבר איך לעקוב אחרי ניסוי ולהשיק וריאנט מוצלח.