Swift Package Manager
ב-Firebase מומלץ להשתמש ב-Swift Package Manager לפרויקטים חדשים.
דרך Xcode
כדי לקבל תמיכה ב-Swift Package Manager, צריך להתקין את Xcode מגרסה 15.2 ואילך.
אם עוברים מפרויקט שמבוסס על CocoaPods, מריצים את הפקודה
pod deintegrate
כדי להסיר את CocoaPods מהפרויקט ב-Xcode. לאחר מכן אפשר למחוק בבטחה את הקובץ.xcworkspace
שנוצר על ידי CocoaPods. אם זו הפעם הראשונה שאתם מוסיפים את Firebase לפרויקט, אפשר להתעלם מהשלב הזה.ב-Xcode, מתקינים את ספריות Firebase על ידי מעבר אל File > Add Packages.
בהודעה שמופיעה, בוחרים את מאגר GitHub של Firebase:
https://github.com/firebase/firebase-ios-sdk.git
בוחרים את גרסת Firebase שבה רוצים להשתמש. בפרויקטים חדשים מומלץ להשתמש בגרסה העדכנית ביותר של Firebase.
בוחרים את ספריות Firebase שרוצים לכלול באפליקציה.
בסיום, Xcode יתחיל לפתור את יחסי התלות בין החבילות ולהוריד אותן ברקע.
דרך Package.swift
כדי לשלב את Firebase בחבילת Swift באמצעות מניפסט Package.swift
, אפשר להוסיף את Firebase למערך dependencies
של החבילה. פרטים נוספים זמינים במסמכי התיעוד של Swift Package Manager.
dependencies: [
.package(name: "Firebase",
url: "https://github.com/firebase/firebase-ios-sdk.git",
from: "8.0"),
// ...
],
לאחר מכן, בכל יעד שתלויים במוצר של Firebase, מוסיפים אותו למערך dependencies
של היעד הזה.
.target(
name: "MyTargetName",
dependencies: [
.product(name: "FirebaseAuth", package: "Firebase"),
// ...
]
),
שיקולים ספציפיים למוצר
כדי שחלק ממוצרי Firebase יפעלו כראוי, נדרשים שלבי שילוב נוספים.
Google Analytics
אם Google Analytics נכלל באופן עקיף, צריך להוסיף את הדגל -ObjC
של הקישור להגדרות ה-build של היעד.
Crashlytics
Crashlytics מחייב להעלות סמלים לניפוי באגים.
אפשר להשתמש בשלב build של סקריפט להרצה ב-Xcode כדי להעלות באופן אוטומטי את סמלי ניפוי הבאגים אחרי ה-build. כאן אפשר למצוא את סקריפט ההרצה:
${BUILD_DIR%Build/*}/SourcePackages/checkouts/firebase-ios-sdk/Crashlytics/run
אפשרות נוספת להעלאת סמלים היא להשתמש בסקריפט upload-symbols
. מניחים את הסקריפט בספריית משנה של קובץ הפרויקט (לדוגמה scripts/upload-symbols
), ולאחר מכן מוודאים שאפשר להריץ את הסקריפט:
chmod +x scripts/upload-symbols
אפשר להשתמש בסקריפט הזה כדי להעלות קבצים מסוג dSYM באופן ידני. כדי לקבל הערות לשימוש והוראות נוספות לגבי הסקריפט, מריצים את upload-symbols
בלי פרמטרים.
CocoaPods
ב-Firebase יש תמיכה בהתקנה באמצעות CocoaPods בנוסף ל-Swift Package Manager.
כדי להשתמש בהפצה של CocoaPods ב-Firebase, נדרשים Xcode 15.2 ו-CocoaPods בגרסה 1.12.0 ואילך. כך מתקינים את Firebase באמצעות CocoaPods:
יוצרים Podfile אם אין עדיין. ברמה הבסיסית (root) של ספריית הפרויקט, מריצים את הפקודה הבאה:
pod init
מוסיפים ל-Podfile את ה-pods של Firebase שבהם רוצים להשתמש באפליקציה.
אפשר להוסיף לאפליקציה כל אחד ממוצרי Firebase הנתמכים.
Analytics הופעל
# Add the Firebase pod for Google Analytics pod 'FirebaseAnalytics' # For Analytics without IDFA collection capability, use this pod instead # pod ‘Firebase/AnalyticsWithoutAdIdSupport’ # Add the pods for any other Firebase products you want to use in your app # For example, to use Firebase Authentication and Cloud Firestore pod 'FirebaseAuth' pod 'FirebaseFirestore'
מידע נוסף על IDFA, המזהה הפרסומי ברמת המכשיר, זמין במסמכי התיעוד של Apple בנושא פרטיות המשתמשים ושימוש בנתונים ובנושא שקיפות בנושא מעקב אחר אפליקציות.
Analytics לא מופעל
# Add the pods for the Firebase products you want to use in your app # For example, to use Firebase Authentication and Cloud Firestore pod 'FirebaseAuth' pod 'FirebaseFirestore'
מתקינים את ה-pods ופותחים את הקובץ
.xcworkspace
כדי לראות את הפרויקט ב-Xcode:pod install --repo-update
open your-project.xcworkspace
שיקולים ספציפיים למוצר
כדי שחלק ממוצרי Firebase יפעלו כראוי, נדרשים שלבי שילוב נוספים.
Crashlytics
Crashlytics מחייב להעלות סמלים לניפוי באגים.
אפשר להשתמש בשלב build של סקריפט להרצה ב-Xcode כדי להעלות באופן אוטומטי את סמלי ניפוי הבאגים אחרי ה-build. כאן אפשר למצוא את סקריפט ההרצה:
"${PODS_ROOT}/FirebaseCrashlytics/run"
קרתגו
התמיכה ב-Carthage היא ניסיונית. בהוראות ב-GitHub מוסבר איך לכלול את Firebase באפליקציה באמצעות Carthage.
שילוב ידני
Firebase מספקת הפצה של XCFramework בינארי שנוצר מראש למשתמשים שרוצים לשלב את Firebase בלי להשתמש במנהל יחסי תלות. כדי להתקין את Firebase:
מורידים את קובץ ה-zip של ה-SDK של המסגרת. הקובץ הזה מכיל קטעי ארכיטקטורה לכל ארכיטקטורות היעד הזמינות לכל ערכות ה-SDK של Firebase, ולכן הורדת הקובץ עשויה להימשך זמן מה.
מבטלים את האריזה של הקובץ ובודקים את
README
כדי למצוא את המסגרות שרוצים לכלול באפליקציה.מוסיפים את הדגל של הקישור
-ObjC
ב-Other Linker Settings
בהגדרות ה-build של היעד.