הוספת Firebase לפרויקט ב-Unity

משפרים את המשחקים ב-Unity באמצעות ערכות ה-SDK של Firebase Unity.

כדי להראות כמה קל לקשר את Firebase לפרויקט ב-Unity, יצרנו משחק לדוגמה, MechaHamster. אם רוצים לנסות להוסיף את Firebase למשחק, אפשר להשתמש בגרסת המתחילים שזמינה ב-GitHub. אם אתם רוצים גרסה מלאה, אתם יכולים לעיין בגרסאות ב-App Store או ב-Google Play Store.

MechaHamster (GitHub)

MechaHamster (App Store)

MechaHamster (חנות Play)


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

כבר הוספתם את Firebase לפרויקט ב-Unity? חשוב לוודא שאתם משתמשים בגרסה העדכנית ביותר של Firebase Unity SDK.

דרישות מוקדמות

  • מתקינים את Unity 2021 LTS ואילך. יכול להיות שגרסאות קודמות יהיו תואמות גם כן, אבל לא תהיה להן תמיכה פעילה.

  • (בפלטפורמות של אפל בלבד) מתקינים את הרכיבים הבאים:

    • ‫Xcode 26.2 ואילך
    • ‫CocoaPods מגרסה 1.12.0 ואילך
  • צריך לוודא שפרויקט Unity עומד בדרישות הבאות:

    • ל-iOS – מיועד ל-iOS מגרסה 15 ואילך
    • ל-tvOS – טירגוט ל-tvOS מגרסה 15 ואילך
    • ב-Android – טירגוט לרמת API‏ 23 (Marshmallow) ומעלה
  • מגדירים מכשיר פיזי או משתמשים באמולטור כדי להריץ את האפליקציה.

    • בפלטפורמות של אפל – מגדירים מכשיר פיזי או משתמשים בסימולטור של iOS או tvOS.

    • ל-Android — אמולטורים צריכים להשתמש בתמונת אמולטור עם Google Play.

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

שלב 1: יצירת פרויקט Firebase

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

שלב 2: רישום האפליקציה ב-Firebase

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

  1. עוברים אל מסוף Firebase.

  2. במרכז הדף של סקירת הפרויקט, לוחצים על סמל Unity () כדי להפעיל את תהליך ההגדרה.

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

  3. בוחרים את יעד הבנייה של פרויקט Unity שרוצים לרשום, או שבוחרים לרשום את שני היעדים בו-זמנית.

  4. מזינים את המזהים הספציפיים לפלטפורמה של הפרויקט ב-Unity.

    • ל-iOS – מזינים את מזהה ה-iOS של פרויקט Unity בשדה מזהה חבילת iOS.

    • ל-Android – מזינים את מזהה Android של פרויקט Unity בשדה שם חבילת Android.
      המונחים שם החבילה ומזהה האפליקציה משמשים לעיתים קרובות לסירוגין.

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

  6. לוחצים על Register app (רישום האפליקציה).

שלב 3: מוסיפים קובצי הגדרה של Firebase

  1. מקבלים את קובצי ההגדרות של Firebase שספציפיים לפלטפורמה בתהליך ההגדרה של מסוף Firebase.

    • ב-iOS – לוחצים על Download GoogleService-Info.plist (הורדה של GoogleService-Info.plist).

    • ב-Android — לוחצים על הורדה של google-services.json.

  2. פותחים את החלון Project(פרויקט) של הפרויקט ב-Unity ומעבירים את קובצי ההגדרות לתיקייה Assets.

  3. חוזרים למסוף Firebase, בתהליך ההגדרה, ולוחצים על הבא.

שלב 4: מוסיפים את Firebase Unity SDKs

  1. במסוף Firebase, לוחצים על הורדה של Firebase Unity SDK, ואז מבטלים את הדחיסה של ה-SDK במיקום נוח.

    • תמיד אפשר להוריד שוב את Firebase Unity SDK.

    • ‫Firebase Unity SDK לא ספציפי לפלטפורמה.

  2. בפרויקט הפתוח ב-Unity, עוברים אל Assets (נכסים) > Import Package (ייבוא חבילה) > Custom Package (חבילה מותאמת אישית).

  3. מתוך ה-SDK שחולץ, בוחרים את מוצרי Firebase הנתמכים שרוצים להשתמש בהם באפליקציה.

    Analytics מופעל

    • מוסיפים את חבילת Firebase ל-Google Analytics: FirebaseAnalytics.unitypackage
    • מוסיפים את החבילות של כל מוצר אחר של Firebase שרוצים להשתמש בו באפליקציה. לדוגמה, כדי להשתמש ב-Firebase Authentication וב-Firebase Realtime Database:
      FirebaseAuth.unitypackage ו-FirebaseDatabase.unitypackage

    Analytics לא מופעל

    מוסיפים את החבילות של מוצרי Firebase שרוצים להשתמש בהם באפליקציה. לדוגמה, כדי להשתמש ב-Firebase Authentication וב-Firebase Realtime Database:
    FirebaseAuth.unitypackage ו- FirebaseDatabase.unitypackage

  4. בחלון ייבוא חבילת Unity, לוחצים על ייבוא.

  5. חוזרים למסוף Firebase, בתהליך ההגדרה, ולוחצים על הבא.

שלב 5: אישור הדרישות לגבי הגרסה של Google Play Services

חלק מהמוצרים ב-Firebase Unity SDK ל-Android דורשים Google Play services. אילו מוצרים תלויים במוצר הזה כדי להשתמש במוצרים האלה, צריך לוודא שגרסת Google Play services עדכנית.

מוסיפים את ההצהרה using ואת קוד האתחול הבא בתחילת האפליקציה. אפשר לבדוק אם יש עדכון לגרסה הנדרשת של Google Play services ולעדכן אותה לפני שמפעילים שיטות אחרות ב-SDK.

using Firebase.Extensions;
Firebase.FirebaseApp.CheckAndFixDependenciesAsync().ContinueWithOnMainThread(task => {
  var dependencyStatus = task.Result;
  if (dependencyStatus == Firebase.DependencyStatus.Available) {
    // Create and hold a reference to your FirebaseApp,
    // where app is a Firebase.FirebaseApp property of your application class.
       app = Firebase.FirebaseApp.DefaultInstance;

    // Set a flag here to indicate whether Firebase is ready to use by your app.
  } else {
    UnityEngine.Debug.LogError(System.String.Format(
      "Could not resolve all Firebase dependencies: {0}", dependencyStatus));
    // Firebase Unity SDK is not safe to use here.
  }
});

הכול מוכן! הפרויקט ב-Unity רשום ומוגדר לשימוש ב-Firebase.

אם נתקלתם בבעיות בהגדרה, מומלץ לעיין בשאלות הנפוצות ובפתרון הבעיות ב-Unity.

הגדרת תהליך עבודה במחשב (בטא)

כשיוצרים משחק, לרוב קל יותר לבדוק אותו קודם בעורך Unity ובפלטפורמות למחשב, ואז לפרוס אותו ולבדוק אותו במכשירים ניידים בשלב מאוחר יותר של הפיתוח. כדי לתמוך בתהליך העבודה הזה, אנחנו מספקים קבוצת משנה של ערכות ה-SDK של Firebase Unity שאפשר להריץ ב-Windows, ב-macOS, ב-Linux ומתוך העורך של Unity.

  1. מגדירים פרויקט Unity לפלטפורמת מחשב על ידי ביצוע אותן הוראות כמו לפלטפורמה לנייד (מתחילים בשלב רישום האפליקציה ב-Firebase שלמעלה).

  2. מריצים את פרויקט Unity בסביבת הפיתוח המשולבת של Unity או בוחרים לבנות את פרויקט Unity למחשב.

  3. (אופציונלי) מריצים את פרויקט Unity במצב עריכה.

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

    1. כשיוצרים FirebaseApp שמשמש את כלי העריכה, לא משתמשים במופע ברירת המחדל.

    2. במקום זאת, צריך להזין שם ייחודי לקריאה ל-FirebaseApp.Create().

      זה חשוב כדי למנוע קונפליקט באפשרויות בין המופע שבו נעשה שימוש ב-Unity IDE לבין המופע שבו נעשה שימוש בפרויקט Unity.

מוצרים נתמכים של Firebase

מידע נוסף על ספריות Unity Firebase זמין במאמרי העזרה.

ספריות Firebase זמינות לנייד

‫Firebase Unity SDK תומך במוצרי Firebase הבאים ב-Apple וב-Android:

מוצר Firebase חבילת Unity
AdMob מופץ בנפרד ב-AdMob Unity Plugin
Firebase AI Logic FirebaseAI.unitypackage
Analytics FirebaseAnalytics.unitypackage
App Check FirebaseAppCheck.unitypackage
Authentication FirebaseAuth.unitypackage
Cloud Firestore FirebaseFirestore.unitypackage
Cloud Functions FirebaseFunctions.unitypackage
Cloud Messaging FirebaseMessaging.unitypackage
(מומלץ) FirebaseAnalytics.unitypackage
Cloud Storage FirebaseStorage.unitypackage
Crashlytics FirebaseCrashlytics.unitypackage
(מומלץ) FirebaseAnalytics.unitypackage
Realtime Database FirebaseDatabase.unitypackage
Remote Config FirebaseRemoteConfig.unitypackage
(מומלץ) FirebaseAnalytics.unitypackage
ספריות שהוצאו משימוש או לא נתמכות
Dynamic Links FirebaseDynamicLinks.unitypackage
(מומלץ) FirebaseAnalytics.unitypackage

ספריות Firebase שזמינות למחשב

‫Firebase Unity SDK כולל תמיכה בתהליכי עבודה במחשב עבור קבוצת משנה של מוצרים, שמאפשרת להשתמש בחלקים מסוימים של Firebase בכלי לעריכת Unity ובגרסאות עצמאיות למחשב ב-Windows, ב-macOS וב-Linux.

מוצר Firebase (למחשב) חבילת Unity
Firebase AI Logic FirebaseAI.unitypackage
App Check FirebaseAppCheck.unitypackage
Authentication FirebaseAuth.unitypackage
Cloud Functions FirebaseFunctions.unitypackage
Cloud Firestore FirebaseFirestore.unitypackage
Cloud Storage FirebaseStorage.unitypackage
Realtime Database FirebaseDatabase.unitypackage
Remote Config FirebaseRemoteConfig.unitypackage

‫Firebase מספקת את שאר הספריות למחשב בתור הטמעות stub (לא פונקציונליות) לנוחות כשמפתחים ל-Windows, ל-macOS ול-Linux. לכן, אין צורך להדר קוד באופן מותנה כדי לטרגט את המחשב.

השלבים הבאים