במקום להוריד קובץ .zip
גדול שמכיל את כל קובצי .unitypackage
גם עבור .NET 3.X וגם עבור .NET 4.X, אפשר להוריד חבילות נפרדות מהאתר של Google APIs for Unity.
האתר מספק:
- קובצי
.unitypackage
בודדים של .NET 4.X שמייבאים כחבילות נכסים. - ארכיונים נפרדים של
.tgz
לייבוא באמצעות Unity Package Manager.
האפשרות הזו שימושית במיוחד כשמשתמשים באפליקציה במוצר Firebase יחיד, כי קובצי .unitypackage
הנפרדים מכילים את כל יחסי התלות הנדרשים, וקובצי .tgz
מפורטים לצד קובצי .tgz
קשורים שהם תלויים בהם.
בדף הזה מפורטות הוראות שקשורות ל-Unity Package Manager, לכן מומלץ לקרוא על הכלי במסמכי התיעוד של Unity.
ייבוא חבילות Firebase כנכסים
כשאתם מייבאים מוצרים של Firebase מקובצי .unitypackage
שהורדתם מאתר Google APIs for Unity, חשוב לזכור את הדברים הבאים:
אם אתם משתמשים במספר מוצרים של Firebase בפרויקט, עליכם להוריד ולשדרג את כל מוצרי Firebase לאותה גרסה.
אין לשלב שיטות ייבוא בפרויקט אחד. כלומר, אין לייבא מוצרים של Firebase באמצעות תהליך החבילה של נכסים תוך שימוש בתהליך של מנהל החבילות של Unity.
אחרי ההורדה, כדי לייבא:
בפרויקט הפתוח ב-Unity, עוברים אל Assets > Import Package > Custom Package.
בחלון ייבוא חבילת Unity, לוחצים על ייבוא.
ייבוא חבילות של Firebase באמצעות Unity Package Manager
כשאתם מייבאים מוצרים של Firebase מקובצי .tgz
שהורדתם מהארכיון של Google APIs for Unity, חשוב לזכור את הדברים הבאים:
השיטה הזו זמינה רק בגרסה 2018.3 ואילך.
אם אתם משתמשים במספר מוצרים של Firebase בפרויקט, עליכם להוריד ולשדרג את כל מוצרי Firebase לאותה גרסה.
אין לשלב שיטות ייבוא בפרויקט אחד. כלומר, אין לייבא מוצרים של Firebase באמצעות תהליך החבילה של נכסים דיגיטליים וגם באמצעות תהליך מנהל החבילות של Unity.
יחסי התלות של כל קובץ
.tgz
של מוצר מקושרים לצד קובצי.tgz
משלהם. צריך להוריד ולייבא את קובץ.tgz
של המוצר ואת קובצי.tgz
של יחסי התלות, בסדר הנכון:- מנהל יחסי תלות חיצוניים (
com.google.external-dependency-manager
) - Firebase Core (
com.google.firebase.app
) - מוצרי Firebase שבהם אתם משתמשים בפרויקט. אם משתמשים ב-Realtime Database או ב-Cloud Storage, צריך לייבא קודם את Authentication (
com.google.firebase.auth
).
- מנהל יחסי תלות חיצוניים (
אחרי ההורדה, מייבאים את קובצי ה-.tgz
לפרויקט באחת מהשיטות הבאות:
ממשק המשתמש של מנהל החבילות
- פותחים את החלון Package Manager ב-Unity.
- לוחצים על הסמל
+
בפינה הימנית העליונה של חלון Package Manager ובוחרים באפשרותAdd package from tarball
כדי לפתוח את דפדפן הקבצים. - בוחרים את קובץ ה-tarball הרצוי בדפדפן הקבצים.
חלק מהגרסאות הישנות של Unity 2019 לא תומכות בהוספת קובצי tarballs ישירות. במקרה כזה, תצטרכו:
- מבטלים את דחיסת הקובץ
.tgz
. - לוחצים על הסמל
+
בפינה הימנית העליונה של החלון Package Manager ובוחרים באפשרותAdd package from disk
כדי לפתוח את דפדפן הקבצים. - בוחרים את התיקייה שחולצה בסרגל הקבצים.
manifest.json
- יוצרים תיקייה חדשה לצד התיקייה
Packages
של הפרויקט ומעניקים לה את השםGooglePackages
. - מעבירים את הקבצים של
.tgz
לתיקייה הזו. - פותחים את הקובץ
Packages/manifest.json
בתיקיית הפרויקט ב-Unity באמצעות כלי לעריכת טקסט. מוסיפים רשומה לכל חבילה שרוצים לייבא, וממפים את שם החבילה למיקום בדיסק. חשוב לצרף את
file:
לנתיב הקובץ.tgz
. לדוגמה, אם מייבאים אתcom.google.firebase.storage
ואת יחסי התלות שלו, הערך שלmanifest.json
ייראה כך:{ "dependencies": { "com.google.external-dependency-manager": "file:../GooglePackages/com.google.external-dependency-manager-1.2.164.tgz", "com.google.firebase.app": "file:../GooglePackages/com.google.firebase.app-7.1.0.tgz", "com.google.firebase.auth": "file:../GooglePackages/com.google.firebase.auth-7.1.0.tgz", "com.google.firebase.storage": "file:../GooglePackages/com.google.firebase.storage-7.1.0.tgz", // com.unity package entries... } }
שומרים את קובץ ה-
manifest.json
.כשהמיקוד יחזור ל-Unity, הוא יטען מחדש את
manifest.json
ויייבא את החבילות שנוספו.
חלק מהגרסאות הישנות של Unity לא תומכות בקבצים מסוג .tgz
ב-manifest.json
.
במקרה כזה, צריך:
- מבטלים את דחיסת הקובץ
.tgz
. עורכים את הקובץ
manifest.json
כך שישתמש בנתיב לתיקייה שחולצה, במקום בקובץ.tgz
, באופן הבא:{ "dependencies": { "com.google.external-dependency-manager": "file:../GooglePackages/com.google.external-dependency-manager-1.2.164", "com.google.firebase.app": "file:../GooglePackages/com.google.firebase.app-7.1.0", "com.google.firebase.auth": "file:../GooglePackages/com.google.firebase.auth-7.1.0", "com.google.firebase.storage": "file:../GooglePackages/com.google.firebase.storage-7.1.0", // com.unity package entries... } }
מעבר מ-Unity Package Manager לחבילות נכסים
במקרים מסוימים, כדאי לעבור משימוש ב-Unity Package Manager למעקב אחרי מוצרי Firebase, לייבוא מוצרים בתיקייה Assets
.
אם אתם לא בטוחים באיזו שיטת ייבוא אתם משתמשים, פותחים את הקובץ Packages/manifest.json
בתיקיית הפרויקט ב-Unity. אם הקובץ מכיל רשומות שמתחילות ב-com.google.firebase
, המשמעות היא שהפרויקט שלכם השתמש ב-Unity Package Manager לייבוא.
כדי לעבור לחבילות של נכסים:
בודקים מהן הגרסאות הנוכחיות של חבילות Firebase בפרויקט ומסירים אותן.
- בתפריט Window, בוחרים באפשרות Package Manager. בחלון Package Manager, מוודאים שהאפשרות Packages: In Project מסומנת.
- שימו לב לגרסאות של חבילות Firebase שיובאו.
- לוחצים על כל שם של חבילת קוד ולאחר מכן לוחצים על הסרה. חשוב להסיר את החבילה של External Dependency Manager (
.com.google.external-dependency-manager
) ואת חבילות Firebase.
מורידים ומביאים קבצים חלופיים מסוג
.unitypackage
. תוכל להגדיר אחת משתי אפשרויות:- אם אפשר לשדרג לכל אחת מהחבילות לגרסה העדכנית ביותר, מורידים את קובץ ה-zip של Firebase Unity SDK ומבצעים ייבוא כפי שמתואר במאמר הוספת Firebase לפרויקט ב-Unity.
- אם אתם צריכים לשמור את הגרסאות הנוכחיות של
.unitypackage
, תוכלו להוריד ולייבא חבילות נפרדות כפי שמתואר למעלה בדף הזה.
מעבר מחבילות נכסים ל-Unity Package Manager
במקרים מסוימים, כדאי לעבור מייבוא מוצרים בתיקייה Assets
לייבוא מוצרים ומעקב אחריהם באמצעות Unity Package Manager.
אם אתם לא בטוחים באיזו שיטת ייבוא אתם משתמשים, פותחים את הקובץ Packages/manifest.json
בתיקיית הפרויקט ב-Unity. אם הקובץ מכיל רשומות שמתחילות ב-com.google.firebase
, סימן שהפרויקט כבר משתמש ב-Unity Package Manager לייבוא.
כדי לעבור ל-Unity Package Manager:
חשוב לוודא שכל חבילות Firebase וחבילה של מנהל יחסי התלות החיצוניים הוסרו מהתיקייה
Assets
, באמצעות אחת מהשיטות הבאות.ממשק המשתמש של EDM4U
- בפרויקט הפתוח ב-Unity, עוברים אל Assets > External Dependency Manager > Version Handler > Uninstall Managed Packages.
- בוחרים את כל החבילות של Firebase ואת External Dependency Manager.
- לוחצים על Uninstall Selected Package (הסרת החבילה שנבחרה).
הסרה ידנית
באמצעות הכלים של מערכת הקבצים, מוחקים באופן ידני את התיקיות הבאות:
Assets/Editor Default Resources/Firebase
Assets/ExternalDependencyManager
Assets/Firebase
Assets/Parse
Assets/Plugins/iOS/Firebase
מייבאים חבילות באמצעות Unity Package Manager, כפי שמתואר למעלה בדף הזה.