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

ערכות ה-SDK של Firebase Unity יעזרו לכם לשפר את המשחקים ב-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 ואילך. התמיכה ב-Unity 2020 נחשבת ללא תוקף, ולא תהיה יותר תמיכה פעילה אחרי הגרסה הראשית הבאה. יכול להיות שגם גרסאות קודמות יהיו תואמות, אבל לא תהיה להן תמיכה פעילה.

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

    • Xcode מגרסה 13.3.1 ואילך
    • CocoaPods מגרסה 1.12.0 ואילך
  • עליכם לוודא שהפרויקט ב-Unity עומד בדרישות הבאות:

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

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

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

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

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

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

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

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

  1. נכנסים למסוף Firebase.

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

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

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

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

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

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

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

  6. לוחצים על רישום האפליקציה.

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

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

    • ב-iOS – לוחצים על Download GoogleService-Info.plist.

    • ב-Android – לוחצים על Download google-services.json.

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

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

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

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

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

    • ערכת ה-SDK של Firebase Unity היא לא ספציפית לפלטפורמה.

  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, בתהליך ההגדרה לוחצים על Next.

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

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

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

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 במצב עריכה.

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

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

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

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

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

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

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

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

מוצר Firebase חבילת Unity
AdMob מופץ בנפרד בפלאגין Unity של AdMob
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
Dynamic Links FirebaseDynamicLinks.unitypackage
(מומלץ) FirebaseAnalytics.unitypackage
Realtime Database FirebaseDatabase.unitypackage
Remote Config FirebaseRemoteConfig.unitypackage
(מומלץ) FirebaseAnalytics.unitypackage

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

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

מוצר Firebase (במחשב) חבילת Unity
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 מספקת את שאר ספריות המחשב כטאבים (לא פונקציונליים) להטמעה, כדי להקל על ה-build ל-Windows, ל-macOS ול-Linux. לכן, אין צורך לבצע הידור מותנה של קוד כדי לטרגט את המחשב.

השלבים הבאים