במהלך פיתוח אפליקציית Apple באמצעות Firebase, יכול להיות שתיתקלו במושגים לא מוכרים או ספציפיים ל-Firebase. בדף הזה אנחנו מנסים לענות על השאלות האלה או להפנות אתכם למקורות מידע שבהם תוכלו לקבל מידע נוסף.
אם יש לכם שאלות בנושא שלא מופיע בדף הזה, אתם מוזמנים להיכנס לאחת מהקהילות שלנו באינטרנט. אנחנו גם נעדכן את הדף הזה בנושאים חדשים מעת לעת, אז כדאי לחזור ולבדוק אם הוספנו את הנושא שרציתם ללמוד עליו.
תמיכה בספריית Firebase לפי פלטפורמה
בטבלה הבאה מפורטות ספריות Firebase שתואמות לפלטפורמות של אפל. בשלב הזה, יש תמיכה ב-visionOS וב-watchOS רק דרך הקהילה. הוראות התקנה ובעיות מוכרות מופיעות במאגר GitHub של Firebase Apple platforms SDK.
ספרייה | iOS | macOS | Mac Catalyst |
tvOS | visionOS | watchOS |
---|---|---|---|---|---|---|
A/B Testing | ||||||
Firebase AI Logic 1 | iOS 15 ואילך | macOS 12 ואילך | Catalyst 15+ | tvOS מגרסה 15 ואילך (תמיכה מהקהילה בלבד) | watchOS 8 ואילך | |
Analytics | גרסה 8.9.0 ואילך | גרסה 8.9.0 ואילך | גרסה 8.9.0 ואילך | |||
Analytics ללא מזהה פרסום | גרסה 8.9.0 ואילך | גרסה 8.9.0 ואילך | גרסה 8.9.0 ואילך | |||
Analytics המרה במכשיר | ||||||
ספק DeviceCheck (App Check) | watchOS 9 ואילך | |||||
App Check ספק שירותי אימות אפליקציות | iOS 14 ואילך | macOS 11 ואילך | Catalyst 14+ | tvOS 15 ואילך | watchOS 9 ואילך | |
App Check ספקים בהתאמה אישית וספקים לניפוי באגים | ||||||
App Distribution | ||||||
Authentication | חלקי | חלקי | חלקי | חלקי | חלקי | |
Cloud Firestore | הפצות מקור בלבד | |||||
Cloud Functions | ||||||
Cloud Messaging | ||||||
Cloud Storage | ||||||
Crashlytics | ||||||
Data Connect | ||||||
Dynamic Links | ||||||
Firebase התקנות | ||||||
Firebase ML Model Downloader | ||||||
In-App Messaging | ||||||
Performance Monitoring | ||||||
Realtime Database | ||||||
Remote Config |
1 Firebase AI Logic נקרא בעבר "Vertex AI in Firebase".
קליפים של אפליקציות
רוב הספריות של Firebase יבנו ויפעלו ביעד של קליפ אפליקציה, אבל רבות מהן מוגבלות בגלל הגבלות בסיסיות של מערכת ההפעלה. בעיות מוכרות:
- קישורים דינמיים לא יכולים להעביר משתמשים לקטע אפליקציה אם הם מקישים על קישור בלי שהאפליקציה מותקנת.
- אי אפשר לטעון נתונים ב-Firestore וב-Realtime Database בקליפים של אפליקציות בגלל תלות ב-CFStream.
רשימה מלאה של בעיות ידועות ב-App Clip זמינה במאגר Firebase GitHub.
GoogleService-Info.plist
כחלק מהוספת Firebase לפרויקט Apple, צריך להוסיף את קובץ ההגדרות GoogleService-Info.plist
לפרויקט. אם רוצים להשתמש בכמה פרויקטים של Firebase באפליקציה אחת, אפשר לעיין במסמכי התיעוד בנושא הגדרה של כמה פרויקטים.
אפשר לקרוא מידע נוסף על תהליך האתחול של אפליקציית Firebase במסמכי העזר של Swift.
Swift Package Manager
מידע נוסף על שילוב של Swift Package Manager זמין במדריך שלנו.
תוספים ל-Swift
בעבר, תוספי Swift ל-Firebase Apple platform SDK היו תוספים קטנים של קוד פתוח לספריות הקיימות של Firebase Apple platform, שמאפשרים לקוד שלכם להשתמש בתכונות ספציפיות לשפת Swift. מאז, ממשקי ה-API האלה נוספו ישירות לספריות הראשיות, ולא צריך לכלול אותם בנפרד. אם בעבר היה לכם SDK של תוסף Swift בבסיס הקוד, כדאי לעיין במדריך להעברת נתונים לקבלת הוראות לשדרוג.
SwiftUI
Firebase תומך באופן מלא ב-SwiftUI, אבל ההגדרה תהיה שונה מעט מאפליקציות UIKit כדי ש-Firebase יפעל בצורה תקינה בסביבת SwiftUI מלאה. פרטים נוספים זמינים בפוסט הזה בבלוג של Peter Friese.
באפליקציות SwiftUI צריך להשבית את החלפת השיטות בגלל בעיה מוכרת. פרטים נוספים זמינים בקטע בנושא החלפת שיטות ב-app delegate.
החלפה של שיטות ב-App delegate
Firebase מבצע swizzling של חלק מהשיטות במחלקה של נציג האפליקציה באפליקציה שלכם כדי לחבר באופן אוטומטי שירותים מסוימים של Firebase לקריאות חוזרות של מערכת ההפעלה, כמו FCM והאסימון של APNs. כדי להשבית את ה-swizzling באפליקציה, מוסיפים את הדגל FirebaseAppDelegateProxyEnabled
לקובץ Info.plist
של האפליקציה ומגדירים אותו לערך NO
.
ארבעה מוצרים של Firebase משתמשים ב-swizzling של App Delegate: Analytics, App Distribution, Authentication ו-FCM. אם השבתתם את ה-swizzling באפליקציה שלכם ואתם משתמשים באחד מהמוצרים הבאים, כדאי לעיין במדריך הספציפי למוצר כדי ללמוד איך להשתמש במוצר בלי swizzling:
תמיכה ב-iOS 14
iOS 14 כולל שינויים חדשים בהרשאות המשתמשים שקשורים למזהה הפרסום של המשתמש. במדריך להכנת האפליקציה ל-iOS 14 מפורטות ההנחיות שיעזרו לך להבין אם האפליקציה שלך עשויה להיות מושפעת מהשינויים.
תמיכה שוטפת ב-Objective-C
כדי להקל על התחזוקה של המסמכים שלנו בנושא פלטפורמות Apple, החלטנו ב-Firebase להתמקד בקטעי קוד ובדוגמאות קוד ב-Swift במדריכים ובחומרים אחרים למפתחים. קטעי קוד של Objective-C יוסרו מהמדריכים שלנו החל מ-1 בינואר 2024. נמשיך לעדכן את מסמכי העיון של Objective-C לכל מוצרי Firebase.
מקורות מידע בקוד פתוח לערכות Firebase SDK לפלטפורמת Apple
פלטפורמת Firebase תומכת בפיתוח קוד פתוח, ואנחנו מעודדים את הקהילה לתרום ולספק משוב.
ערכות Firebase SDK לפלטפורמת Apple
כל ערכות ה-SDK של Firebase לפלטפורמות של אפל, למעט Analytics, מפותחות כספריות קוד פתוח במאגר Firebase GitHub הציבורי שלנו.
FirebaseUI
FirebaseUI היא קבוצה של ספריות כלי עזר שמבוססות על Firebase, כולל זרימת ממשק משתמש מוכן להטמעה לאימות וכלי עזר לנתונים ל-Cloud Firestore ול-Realtime Database. פרטים נוספים על FirebaseUI זמינים בדף GitHub.
דוגמאות למתחילים
ב-Firebase יש אוסף של דוגמאות להפעלה מהירה של רוב ממשקי ה-API של Firebase ב-iOS. אפשר למצוא את המדריכים האלה במאגר המדריכים לתחילת העבודה ב-GitHub של Firebase.
אפשר לפתוח כל מדריך להתחלה מהירה ב-Xcode, ואז להריץ אותו במכשיר נייד או בסימולטור. אפשר גם להשתמש במדריכים לתחילת העבודה האלה כדוגמאות קוד לשימוש ב-Firebase SDKs.