אפשרויות להתקנת Firebase באפליקציה ל-Apple

Swift Package Manager

ב-Firebase מומלץ להשתמש ב-Swift Package Manager לפרויקטים חדשים.

דרך Xcode

כדי לקבל תמיכה ב-Swift Package Manager, צריך להתקין את Xcode בגרסה 15.2 ואילך.

  1. אם עוברים מפרויקט שמבוסס על CocoaPods, מריצים את הפקודה pod deintegrate כדי להסיר את CocoaPods מהפרויקט ב-Xcode. לאחר מכן אפשר למחוק בבטחה את הקובץ .xcworkspace שנוצר על ידי CocoaPods. אם אתם מוסיפים את Firebase לפרויקט בפעם הראשונה, אפשר להתעלם מהשלב הזה.

  2. ב-Xcode, מתקינים את ספריות Firebase על ידי מעבר אל File (קובץ) > Add Packages (הוספת חבילות).

  3. בהודעה שמופיעה, בוחרים את מאגר GitHub של Firebase:

    https://github.com/firebase/firebase-ios-sdk.git
    
  4. בוחרים את גרסת Firebase שבה רוצים להשתמש. בפרויקטים חדשים מומלץ להשתמש בגרסה העדכנית ביותר של Firebase.

  5. בוחרים את ספריות 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:

  1. יוצרים קובץ Podfile אם עדיין אין לכם קובץ כזה. מריצים את הפקודה הבאה ברמה הבסיסית של תיקיית הפרויקט:

    pod init
  2. מוסיפים ל-Podfile את פקעות 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'
  3. מתקינים את ה-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:

  1. מורידים את קובץ ה-zip של ה-SDK של המסגרת. הקובץ הזה מכיל קטעי ארכיטקטורה לכל ארכיטקטורות היעד הזמינות לכל ערכות ה-SDK של Firebase, ולכן הורדת הקובץ עשויה להימשך זמן מה.

  2. מבטלים את האריזה של הקובץ ובודקים את README כדי למצוא את המסגרות שרוצים לכלול באפליקציה.

  3. מוסיפים את הדגל של הקישור -ObjC ב-Other Linker Settings בהגדרות ה-build של היעד.