משפרים את המשחקים ב-Unity בעזרת ערכות ה-SDK של Firebase Unity.
כדי להראות כמה קל לקשר את Firebase לפרויקט ב-Unity, יצרנו משחק לדוגמה בשם MechaHamster. אם אתם רוצים לנסות להוסיף את Firebase למשחק, השתמשו בגרסת ההתחלה שנמצאת ב-GitHub. אם אתם רוצים גרסה מלאה, אתם יכולים לבדוק את הגרסאות ב-App Store או ב-Google Play Store.
מידע נוסף על שיפור המשחקים באמצעות Firebase זמין בדף המשחקים של Firebase.
כבר הוספתם את Firebase לפרויקט ב-Unity? חשוב לוודא שאתם משתמשים בגרסה העדכנית של Google Mobile Ads SDK ל-Firebase Unity.
דרישות מוקדמות
מתקינים את Unity 2021 LTS ואילך. יכול להיות שגם גרסאות קודמות יהיו תואמות, אבל לא תהיה להן תמיכה פעילה.
(פלטפורמות של אפל בלבד) מתקינים את הרכיבים הבאים:
- Xcode מגרסה 26.2 ואילך
- CocoaPods מגרסה 1.12.0 ואילך
חשוב לוודא שהפרויקט ב-Unity עומד בדרישות הבאות:
- ב-iOS – מטרגט את iOS מגרסה 15 ואילך
- ב-tvOS – מטרגט את tvOS 15 ואילך
- ב-Android – מטרגטת לרמת ה-API המיועדת 24 (Nougat) ומעלה
מגדירים מכשיר פיזי או משתמשים באמולטור כדי להפעיל את האפליקציה.
בפלטפורמות של אפל – מגדירים מכשיר פיזי או משתמשים בסימולטור של iOS או tvOS.
ב-Android – באמולטורים צריך להשתמש בתמונת אמולטור עם Google Play.
אם עדיין אין לכם פרויקט ב-Unity ואתם רק רוצים לנסות מוצר של Firebase, אתם יכולים להוריד את אחת מדוגמאות ההתחלה המהירה שלנו.
שלב 1: יוצרים פרויקט ב-Firebase
כדי להוסיף את Firebase לפרויקט ב-Unity, צריך ליצור פרויקט ב-Firebase ולקשר אותו לפרויקט ב-Unity. במאמר הסבר על פרויקטים ב-Firebase תוכלו לקרוא מידע נוסף על פרויקטים ב-Firebase.
שלב 2: רושמים את האפליקציה ב-Firebase
אתם יכולים לרשום אפליקציה אחת או יותר, או משחק אחד או יותר, כדי לקשר אותם לפרויקט Firebase.
נכנסים למסוף Firebase.
במרכז דף הסקירה הכללית של הפרויקט, לוחצים על הסמל של Unity () כדי להפעיל את תהליך ההגדרה.
אם כבר הוספתם אפליקציה לפרויקט ב-Firebase, לוחצים על Add app כדי להציג את אפשרויות הפלטפורמה.
בוחרים את יעד ה-build של פרויקט Unity שרוצים לרשום. אפשר גם לבחור לרשום את שני היעדים בו-זמנית.
מזינים את המזהים הספציפיים לפלטפורמה של הפרויקט ב-Unity.
ב-iOS – בשדה iOS bundle ID, מזינים את מזהה ה-iOS של הפרויקט ב-Unity.
ב-Android – מזינים את מזהה ה-Android של הפרויקט ב-Unity בשדה שם החבילה ל-Android.
המונחים שם החבילה ומזהה האפליקציה משמשים לעיתים קרובות לסירוגין.
(אופציונלי) מזינים את הכינויים הספציפיים לפלטפורמה של הפרויקט ב-Unity.
הכינויים האלה הם מזהים פנימיים לנוחות, ורק אתם יכולים לראות אותם במסוף Firebase.לוחצים על Register app.
שלב 3: מוסיפים קובצי תצורה של Firebase
מורידים את קובצי התצורה של Firebase הספציפיים לפלטפורמה בתהליך העבודה להגדרה במסוף Firebase.
ב-iOS – לוחצים על Download GoogleService-Info.plist.
ב-Android – לוחצים על Download google-services.json.
פותחים את החלון Project(פרויקט) של הפרויקט ב-Unity ומעבירים את קובצי התצורה לתיקייה
Assets.חוזרים למסוף Firebase, ובמסך תהליך ההגדרה לוחצים על הבא.
שלב 4: מוסיפים את ערכות Firebase Unity SDK
במסוף Firebase, לוחצים על Download Firebase Unity SDK ומחלצים את קובצי ה-SDK למיקום נוח.
תמיד אפשר להוריד שוב את Firebase Unity SDK.
Firebase Unity SDK לא ספציפי לפלטפורמה.
בפרויקט Unity הפתוח, עוברים אל Assets (נכסים) > Import Package (ייבוא חבילה) > Custom Package (חבילה בהתאמה אישית).
מתוך ה-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- מוסיפים את חבילת Firebase עבור Google Analytics:
בחלון Import Unity Package, לוחצים על Import.
חוזרים למסוף Firebase, ובמסך תהליך ההגדרה לוחצים על הבא.
שלב 5: מוודאים שגרסת Google Play Services עומדת בדרישות
חלק מהמוצרים ב-SDK של Firebase Unity ל-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.
כדי להגדיר פרויקט Unity לפלטפורמת מחשב, פועלים לפי אותן הוראות כמו לפלטפורמה לנייד (מתחילים בשלב רישום האפליקציה ב-Firebase שלמעלה).
מריצים את הפרויקט ב-Unity IDE או בוחרים ליצור את הפרויקט ב-Unity למחשב.
(אופציונלי) מריצים את פרויקט Unity במצב עריכה.
אפשר להפעיל את ה-SDK של Firebase Unity גם במצב העריכה של Unity, וכך להשתמש בו בפלאגינים של העורך.
כשיוצרים
FirebaseAppשמשמש את העורך, לא משתמשים במכונה שמוגדרת כברירת מחדל.במקום זאת, צריך לתת שם ייחודי לקריאה ל-
FirebaseApp.Create().חשוב לעשות את זה כדי למנוע התנגשות בין האפשרויות של המכונה שמשמשת את Unity IDE לבין המכונה שמשמשת את הפרויקט ב-Unity.
מוצרי Firebase נתמכים
מידע נוסף על ספריות Unity Firebase זמין במאמרי העזרה.
ספריות Firebase שזמינות לנייד
Firebase Unity SDK תומך במוצרי Firebase הבאים ב-Apple וב-Android:
| מוצר Firebase | חבילת Unity |
|---|---|
| AdMob | מופץ בנפרד בפלאגין של AdMob ל-Unity |
| 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 שזמינות למחשב
ערכת ה-SDK של Firebase Unity כוללת תמיכה בתהליך עבודה במחשב לקבוצת משנה של מוצרים, ומאפשרת להשתמש בחלקים מסוימים של Firebase בעורך Unity ובגרסאות build עצמאיות למחשב ב-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 |
כדי שיהיה נוח יותר לפתח ל-Windows, ל-macOS ול-Linux, Firebase מספקת את שאר הספריות למחשב כהטמעות של stub (לא פונקציונליות). לכן, אין צורך להדר קוד באופן מותנה כדי לטרגט למחשב.
השלבים הבאים
הכנות להשקת האפליקציה:
- מגדירים התראות לגבי תקציב לפרויקט במסוף Google Cloud.
- כדי לקבל תמונה כוללת של השימוש בפרויקט בכמה שירותי Firebase, עקבו אחרי לוח הבקרה Usage and billing במסוף Firebase.
- עיינו ברשימת המשימות להשקה של Firebase.
נתקלתם בבעיות ב-Firebase ובפרויקט ב-Unity? פתרון בעיות ושאלות נפוצות לגבי Unity