במקום להוריד קובץ .zip גדול שמכיל את כל קובצי .unitypackage גם ל-.NET 3.X וגם ל-.NET 4.X, אתם יכולים להוריד חבילות נפרדות מאתר Google APIs for Unity.
האתר מספק:
- קובצי .NET 4.X
.unitypackage נפרדים לייבוא כחבילות נכסים. - קובצי ארכיון
.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 (נכסים > ייבוא חבילה > חבילה מותאמת אישית).
בחלון Import Unity Package, לוחצים על Import.
ייבוא חבילות של Firebase באמצעות Unity Package Manager
כשמייבאים מוצרי Firebase מקובצי .tgz שהורדו מארכיון Google APIs for Unity, חשוב לזכור את הנקודות הבאות:
השיטה הזו זמינה רק בגרסה 2018.3 ואילך.
אם אתם משתמשים בכמה מוצרי Firebase בפרויקט, אתם צריכים להוריד ולשדרג את כל מוצרי Firebase לאותה גרסה.
אל תשלבו שיטות ייבוא שונות באותו פרויקט. כלומר, אל תייבאו מוצרי Firebase גם באמצעות תהליך חבילת הנכסים וגם באמצעות תהליך Unity Package Manager.
יחסי התלות של כל קובץ
.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 לא תומכות בהוספה ישירה של קובצי tarball. במקרה כזה, תצטרכו:
- מחלצים את קובץ ה-
.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 והחבילה של External Dependency Manager הוסרו מהתיקייה
Assets, באחת מהשיטות הבאות.ממשק המשתמש של EDM4U
- בפרויקט הפתוח ב-Unity, עוברים אל Assets > External Dependency Manager > Version Handler > Uninstall Managed Packages (נכסים > מנהל יחסי תלות חיצוני > מנהל גרסאות > הסרת חבילות מנוהלות).
- בוחרים את כל החבילות של Firebase ואת External Dependency Manager.
- לוחצים על Uninstall Selected Package (הסרת החבילה שנבחרה).
הסרה ידנית
באמצעות כלים של מערכת הקבצים, מוחקים באופן ידני את התיקיות הבאות:
Assets/Editor Default Resources/FirebaseAssets/ExternalDependencyManagerAssets/FirebaseAssets/ParseAssets/Plugins/iOS/Firebase
מייבאים חבילות באמצעות Unity Package Manager, כפי שמתואר למעלה בדף הזה.