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

שלב 4: מוסיפים ערכות SDK של Firebase Unity

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

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

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

  2. בפרויקט הפתוח ב-Unity, עוברים אל Assets‏ > Import Package‏ > Custom Package.

  3. מתוך ה-SDK ללא קובץ ZIP, בוחרים את המוצרים הנתמכים של 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 של Unity Firebase ל-Android מחייב את ה-Google Play services, שחייב להיות עדכני כדי שאפשר יהיה להשתמש ב-SDK.

מוסיפים את ההצהרה הבאה של 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 IDE או בוחרים ליצור את פרויקט Unity למחשב.

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

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

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

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

      חשוב לעשות זאת כדי למנוע התנגשות בין האפשרויות בין המכונה של סביבת הפיתוח המשולבת (IDE) לבין המכונה שמשמשת את הפרויקט ב-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. לכן, אין צורך לבצע הידור מותנה של קוד כדי לטרגט את המחשב.

השלבים הבאים