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

Swift Package Manager

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

באמצעות Xcode

כדי להשתמש ב-Swift Package Manager, נדרשת גרסה 16.2 ומעלה.

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

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

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

    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 להגדרות הבנייה של היעד אם הוא נכלל באופן טרנזיטיבי.

Crashlytics

נדרשת העלאה של סמלים לניפוי באגים באפליקציה Crashlytics.

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

${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 16.2 ו-CocoaPods בגרסה 1.12.0 ומעלה. כך מתקינים את Firebase באמצעות CocoaPods:

  1. צריך ליצור Podfile אם אין עדיין. מהרמה הבסיסית (root) של ספריית הפרויקט, מריצים את הפקודה הבאה:

    pod init
  2. מוסיפים ל-Podfile את ה-pods של Firebase שרוצים להשתמש בהם באפליקציה.

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

    # Add the Firebase pod for Google Analytics
    pod 'FirebaseAnalytics'
    
    # For Analytics without IDFA collection capability, use this pod instead
    # pod FirebaseAnalytics/Core
    
    # 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.

    # 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.

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

"${PODS_ROOT}/FirebaseCrashlytics/run"

קרתגו

התמיכה ב-Carthage היא ניסיונית. אפשר לעיין בהוראות ב-GitHub להוספת Firebase לאפליקציה באמצעות Carthage.

שילוב ידני

‫Firebase מספקת הפצה בינארית מוכנה מראש של XCFramework למשתמשים שרוצים לשלב את Firebase בלי להשתמש במנהל תלות. כדי להתקין את Firebase:

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

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

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