איך להתכונן לקראת דרישות הגילוי הנאות של Apple לגבי איסוף נתונים ב-App Store

Apple דורשת ממפתחים שמפרסמים אפליקציות ב-App Store להציג גילוי נאות הכולל פרטים מסוימים לגבי האופן שבו האפליקציה משתמשת בנתונים.

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

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

כדי לוודא שהגילויים הנאותים באפליקציה יהיו מדויקים, מומלץ תמיד להשתמש בגרסה העדכנית ביותר של כל Firebase SDK.

סוכן המשתמש של Firebase

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

FirebaseCore

  • לא אוסף נתונים.

GoogleUtilities

  • לא אוספת נתונים, אבל כוללת כלי רשתות שערכות SDK אחרות עשויות להשתמש בהם כדי לאסוף נתונים.

GoogleDataTransport

כולל כלי רשתות שערכות SDK אחרות עשויות להשתמש בהם כדי לאסוף נתונים.

תמיד נאספים

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

FirebaseABTesting

כלי הבדיקה A/B לא אוסף נתונים.

ה-SDK של Firebase A/B Testing מגדיר נכסי משתמש מסוג Google Analytics ומשתמש בהם כדי לציין את החברות בקבוצות הניסוי של Firebase Remote Config ו-Firebase In-App Messaging.

Google Analytics

מידע על איסוף הנתונים של Google Analytics זמין במאמר התמיכה הזה.

FirebaseAppCheck

נאסף כברירת מחדל

תלוי שימוש

  • אם ספק DeviceCheck מותקן, האסימון DCDevice נאסף מ-DeviceCheck.
  • אם הספק של App Attest מותקן, המערכת אוספת גם את אובייקט האימות וגם את אובייקט ההצהרה מ-App Attest.

FirebaseAppDistribution

ה-SDK להפצת אפליקציות מיועד לשימוש בגרסת בטא בלבד. אל תכללו את ה-App Distribution SDK באפליקציה כששולחים אותה ל-App Store.

FirebaseAuthentication

תמיד נאספים

  • יצירת מזהים ושמירתם לצורכי אימות משתמשים.

נאסף כברירת מחדל

תלוי שימוש

  • איסוף שם מוצג, אם המפתח מספק שם מוצג למשתמש.
  • איסוף כתובות האימייל של המשתמשים כפי שסופקו על ידי המפתח כשנעשה שימוש באימות באמצעות סיסמה באימייל או באימות באמצעות קישור באימייל, או כפי שהן מופיעות בתגובה מספק מאוחד אם המפתח משתמש בזהות מאוחדת.
  • אוספת את מספרי הטלפון של המשתמשים כפי שהם צוינו על ידי המפתח כשמשתמשים באימות בטלפון, או אם מספר הטלפון של המשתמש נוסף כשיטת אימות. הנתונים האלה נאספים גם במהלך תהליכי אימות באמצעות SMS כגורם אימות שני.
  • איסוף פרטים ליצירת קשר שקשורים לספקי אימות של צד שלישי, אם המפתח משתמש בספק אימות של צד שלישי עם Firebase Authentication. לדוגמה, המזהה של משתמש עשוי להיות מקושר לפרופיל שלו ב-Facebook אם המפתח משתמש באימות של Facebook, בהתאם להיקפי הגישה שהוקצו. למידע נוסף, אפשר לעיין במסמכי התיעוד של ספק האימות.
  • מאחסן את מזהה המשתמש ב-Game Center אם האפליקציה מקושרת ל-Game Center.
  • האסימון הזה נאסף אם האפליקציה שלכם משתמשת ב-reCAPTCHA Enterprise כדי להגן על תהליכי Authentication. פרטים נוספים על הפרטיות ב-Apple בנושא reCAPTCHA Enterprise

FirebaseCrashlytics

תמיד נאספים

תלוי שימוש

  • אוסף מפתחות מותאמים אישית, יומנים ומזהי משתמשים בטקסט חופשי שהמפתחים מצרפים לדוחות קריסה. בנוסף, הכלי אוסף אירועים לא קטלניים שהוגדרו על ידי המפתחים, עם מעקב סטאק מותאם אישית.
  • איסוף יומני 'נתיבים קודמים' אם משתמשים ב-Crashlytics יחד עם Google Analytics. היומנים האלה מזהים את הפעולות של המשתמשים מיד לפני קריסה, יחד עם מספרי הקריסות.
  • אוסף חלקים מוגדרים על ידי המפתח של התבנית Remote Config ומטא-נתונים של התבנית, אם ערכת ה-SDK של Firebase Remote Config כלולה גם באפליקציה. הנתונים האלה כוללים את גרסת התבנית Remote Config, מזהה הווריאנט של ההשקה, מפתחות הפרמטרים וערכים של פרמטרים שמושפעים מהשקות פעילות.

FirebaseDatabase

נאסף כברירת מחדל

  • אוסף באופן זמני נתוני מכשיר, כולל מידות המסך, השפה, גרסת מערכת ההפעלה, מזהה החבילה, כתובת ה-IP וגרסת ה-SDK של Firebase עבור קישורים עמוקים שהושהו (קישורים עמוקים לאחר התקנת האפליקציה).
  • האפליקציה אוספת באופן זמני את כתובת ה-URL של הקישור הדינמי בלוח העריכה של המכשיר, אם היא זמינה, בהפעלה הראשונה של האפליקציה. מפתחים יכולים להשבית את השימוש ב-Pasteboard על ידי הגדרת הערך NO לנכס FirebaseDeepLinkPasteboardRetrievalEnabled בקובץ Info.plist של האפליקציה.

אם משתמשים ב-Dynamic Links יחד עם Google Analytics:

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

FirebaseFirestore

נאסף כברירת מחדל

FirebaseFunctions

תמיד נאספים

  • איסוף מטא-נתונים של קריאה לפונקציה, כולל שם הפונקציה וכתובת ה-IP של מבצע הקריאה לפונקציה.

FirebaseInAppMessaging

תמיד נאספים

  • מתעד אינטראקציות עם הודעות בתוך האפליקציה. האינטראקציות האלה (חשיפות, קליקים, סגירות) מתועדות דרך Google Analytics. מערכת Firebase מתעדת גם אינטראקציות כדי לעזור למפתחים להעריך את היעילות של קמפיינים לשליחת הודעות.

FirebaseInstallations

נאסף כברירת מחדל

FirebaseMessaging

תמיד נאספים

  • מתעד את אסימון ה-APNs ומשייך אותו למזהה ההתקנה של האפליקציה שנאסף, שמשמיע כאסימון הרישום של העברת הודעות בענן ב-Firebase ‏ (FCM).
  • האפליקציה אוספת את דגם המכשיר, השפה, אזור הזמן, גרסת מערכת ההפעלה, מזהה האפליקציה וגרסת האפליקציה לצורך הרשמה למינוי לנושאים ולביטול ההרשמה.

נאסף כברירת מחדל

תלוי שימוש

אם משתמשים ב-Cloud Messaging יחד עם Google Analytics:

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

FirebaseMLModelDownloader

תמיד נאספים

  • איסוף מטא-נתונים של הורדת מודל למידת מכונה, כמו אירועי הורדה, אירועי מחיקה ושגיאות.

FirebasePerformance

תמיד נאספים

  • אוספת כתובות IP כדי לספק פילוח של נתוני הביצועים לפי מיקום גיאוגרפי.
  • אוסף מדדי ביצועים של אפליקציות, כמו זמן ההפעלה של האפליקציה וזמן האחזור של בקשות לרשת, וגם מעקבים מותאמים אישית שצוינו על ידי המפתחים כדי למדוד את ביצועי האפליקציה.
  • אוספת נתונים על השימוש במעבד (CPU) או בזיכרון של האפליקציה כדי לספק תצוגת ציר זמן של ביצועי האפליקציה.
  • אוספת פרטי מכשיר, פרטי מערכת הפעלה ופרטי אפליקציה כדי לסנן את נתוני הביצועים לפי פלחים שונים של מכשירים.

FirebaseRemoteConfig

תמיד נאספים

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

נאסף כברירת מחדל

תלוי שימוש

אם משתמשים ב-Remote Config יחד עם Google Analytics:

  • איסוף מאפייני משתמשים שהתקבלו על ידי Firebase SDK עבור Google Analytics, כדי לטרגט פרמטרים שמבוססים על תנאים של מאפייני משתמשים.
  • הפונקציה אוספת את חותמת הזמן של האירוע first_open שהתקבלה על ידי ה-SDK של Firebase עבור Google Analytics, כדי לטרגט פרמטרים שמבוססים על מועד הפתיחה הראשונה.

אם נעשה שימוש בהתאמה אישית של Remote Config:

  • אפשר להשתמש בנתונים שנאספים על ידי Firebase Remote Config SDK ובאירועים שנאספים על ידי Firebase SDK עבור Google Analytics כדי ליצור מודלים חזויים ולמדוד את הביצועים של המודלים האלה.

FirebaseSessions

תמיד נאספים

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

FirebaseStorage

נאסף כברירת מחדל

FirebaseVertexAI

תמיד נאספים

  • האובייקט הזה אוסף את גרסת Firebase SDK ואת גרסת השפה Swift.
  • איסוף שם המודל בזמן ההפעלה.