התקנה של חבילות Google ל-Unity

חבילות Google ל-Unity מופצות בשני פורמטים שונים:

  • חבילות נכסים:
    • יש לכם תוסף של .unitypackage.
    • מתקינים בספריית Assets של הפרויקט.
    • אפשר לייבא ב-Unity 5 ומעלה.
    • בדרך כלל כוללות חבילות תלויות.
  • חבילות של Unity Package Manager‏ (UPM):
    • יש לכם תוסף של .tgz.
    • מתקינים בספריית Packages של הפרויקט.
    • אפשר לייבא ב-Unity 2018.4 ומעלה.
    • חבילות תלויות שצריך להתקין בנפרד.

בדף Packages מופיעים הקבצים .unitypackage העדכניים של כל החבילות הזמינות, וקבצים .tgz של חלק מהחבילות.

הדף Archive מכיל קובצי .unitypackage ו-.tgz לכל גרסאות החבילה.

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

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

ייבוא חבילות באמצעות OpenUPM

אפשר להוסיף חבילות חיצוניות לפרויקט Unity באמצעות מאגר OpenUPM. ב-OpenUPM יש הרבה פלאגינים וערכות SDK שימושיים, כמו הפלאגין Google Play Integrity, שעוזר להגן על האפליקציה מפני הונאות וניצול לרעה.

כך מוסיפים, לדוגמה, את הפלאגין Google Play Integrity באמצעות OpenUPM.

OpenUPM-CLI

אם OpenUPM CLI מותקן, אפשר להתקין את מאגר OpenUPM באמצעות הפקודה הבאה:

openupm add com.google.play.integrity

OpenUPM

  1. פותחים את ההגדרות של מנהל החבילות על ידי בחירה באפשרות בתפריט Unity‏ Edit > Project Settings > Package Manager (עריכה > הגדרות הפרויקט > מנהל החבילות).

  2. מוסיפים את OpenUPM כמאגר חבילות בהיקף מסוים לחלון Package Manager:

    Name: package.openupm.com
    URL: https://package.openupm.com
    Scopes: com.google.external-dependency-manager
     com.google.play.common
     com.google.play.core
     com.google.play.integrity
    
  3. פותחים את תפריט מנהל החבילות על ידי בחירה באפשרות בתפריט Unity‏ Window > Package Manager (חלון > מנהל החבילות).

  4. בתפריט הנפתח 'היקף חשבון הניהול' בוחרים באפשרות הרישומים שלי.

  5. בוחרים את חבילת Google Play Integrity plugin for Unity מרשימת החבילות ולוחצים על Install (התקנה).

ייבוא חבילות נכסים עם קבצים מסוג .unitypackage

מייבאים את הקובץ .unitypackage על ידי בחירה באפשרות בתפריט Unity Assets > Import package > Custom Package וייבוא של כל הפריטים. הפעולה הזו תוסיף את תוכן החבילה לפרויקט בספרייה Assets.

ייבוא חבילות UPM עם קבצים מסוג .tgz (גרסה 2018.4 ואילך)

מייבאים קובצי .tgz לפרויקט באחת מהשיטות הבאות:

manifest.json

  1. יוצרים תיקייה חדשה לצד התיקייה Packages של הפרויקט ונותנים לה את השם GooglePackages.
  2. מניחים את הקבצים .tgz בתיקייה הזו.
  3. משתמשים בכלי לעריכת טקסט כדי לפתוח את Packages/manifest.json בתיקייה של פרויקט Unity.
  4. מוסיפים רשומה לכל חבילה שרוצים להתקין, וממפים את שם החבילה למיקום בדיסק, ביחס לקובץ Packages/manifest.json. חשוב להוסיף את 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...
      }
    }
    
  5. שומרים את קובץ manifest.json.

  6. כש-Unity יחזור למצב פעיל, הוא יטען מחדש את manifest.json וייבא את החבילות שנוספו לאחרונה.

חלק מהגרסאות הישנות של Unity לא תומכות בקובצי .tgz ב-manifest.json. במקרה כזה, צריך:

  1. מבטלים את הדחיסה של הקבצים .tgz.
  2. ממקמים את התיקייה שחולצה בתיקייה GooglePackages.
  3. עורכים את הקובץ 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...
      }
    }
    

ממשק משתמש של Package Manager

  1. פותחים את חלון Package Manager (מנהל החבילות) של Unity.
  2. לוחצים על הסמל + בפינה הימנית העליונה של החלון Package Manager (ניהול חבילות) ובוחרים באפשרות Add package from tarball כדי לפתוח את מנהל הקבצים והתיקיות.

    צילום מסך של החלון Unity Package Manager עם

  3. בוחרים את קובץ ה-tar.gz הרצוי במנהל הקבצים והתיקיות.

חלק מהגרסאות הישנות של Unity לא תומכות בהוספה ישירה של קובצי tarball. במקרה כזה, תצטרכו:

  1. מבטלים את הדחיסה של קובץ .tgz.
  2. לוחצים על הסמל + בפינה הימנית העליונה של החלון Package Manager (ניהול חבילות) ובוחרים באפשרות Add package from disk כדי לפתוח את מנהל הקבצים והתיקיות.

    צילום מסך של החלון Unity Package Manager עם

  3. בוחרים את התיקייה שחולצה בדפדפן הקבצים.

חשוב גם לייבא את קובצי .tgz של התלויות של החבילה. אפשר למצוא אותם ברשימה בדף הארכיון בקטע של החבילה הרצויה.

לדוגמה, אם מתקינים את com.google.firebase.storage, צריך להתקין את הקבצים האלה .tgz בסדר הבא:

  1. מנהל תלות חיצוני (com.google.external-dependency-manager)
  2. Firebase Core (com.google.firebase.app)
  3. Firebase Auth (com.google.firebase.auth)
  4. אחסון ב-Firebase‏ (com.google.firebase.storage)

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

ניהול הגרסאות

אם אתם משתמשים בתוכנה לניהול גרסאות כדי לנהל את קובצי הפרויקט, מומלץ להוסיף את הקבצים הרלוונטיים .tgz לניהול הגרסאות. אפשר לערוך ידנית את קובץ manifest.json של הפרויקט (ראו הוראות למעלה) ולהפנות לקובצי .tgz מקומיים באמצעות נתיבים יחסיים.

אם אתם משתמשים ב-git, מומלץ להשתמש ב-Git Large File Storage (LFS) כדי לנהל קבצים גדולים של .tgz.

העברה מחבילות UPM לחבילות נכסים

במקרים מסוימים, יכול להיות שתרצו לעבור משימוש בUnity Package Manager לניהול חבילות Google, להתקנת חבילות בתיקיית הנכסים.

חשוב לוודא שכל חבילות Google הוסרו מ-Unity Package Manager באחת מהשיטות הבאות:

ממשק משתמש של Package Manager

  1. פותחים את חלון Package Manager (מנהל החבילות) של Unity.
  2. לוחצים על In Project בתפריט הנפתח בפינה הימנית העליונה.

    צילום מסך של החלון Unity Package Manager עם

  3. מקלידים com.google בסרגל החיפוש כדי לסנן חבילות של Google.

    צילום מסך של Unity Package Manager Window עם

  4. לוחצים על כל שם חבילה ואז על Remove.

manifest.json

  1. משתמשים בכלי לעריכת טקסט כדי לפתוח את Packages/manifest.json בתיקייה של פרויקט Unity.
  2. בודקים אם יש חבילות מ-Google בקטע 'dependencies'. שם החבילה צריך להתחיל ב-'com.google', למשל 'com.google.firebase.app'.
  3. מוחקים את השורות האלה ושומרים את קובץ ה-JSON.
  4. כש-Unity יחזור למצב פעיל, הוא יטען מחדש את הקובץ manifest.json ויסיר את החבילות שנמחקו.

אחרי שמסירים את החבילות האלה מ-Unity Package Manager, אפשר להוריד ולייבא קובצי .unitypackage חלופיים מדף הארכיון.

מעבר מחבילות נכסים לחבילות UPM

במקרים מסוימים, יכול להיות שתרצו לעבור מהתקנת מוצרים בעץ הנכסים להתקנה ולמעקב של מוצרים באמצעות Unity Package Manager.

אם אתם לא בטוחים באיזו שיטת התקנה אתם משתמשים, בממשק המשתמש של Unity, בודקים אם חבילות Google הרצויות מופיעות בכרטיסייה Project (פרויקט), בקטע Assets (נכסים).

כדי לעבור לחבילות UPM:

  1. מוודאים שכל חבילות Google הוסרו מתיקיית הנכסים.

    • כדי להסיר חבילות של Firebase, פועלים לפי ההוראות האלה.
    • כדי להסיר את Play Plugins for Unity, מוחקים את התיקייה GooglePlayPlugins מתחת ל-Assets.
  2. מתקינים חבילות באמצעות Unity Package Manager, כמו שמתואר למעלה.

הוראות להעברה ספציפיות למוצר

הוראות ל-Firebase מפורטות כאן.