Дополнительные варианты установки Unity

Вместо загрузки большого .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 API для Unity , следует учитывать следующее:

  • Если в вашем проекте используется несколько продуктов Firebase, необходимо загрузить и обновить все продукты Firebase до одной и той же версии.

  • Не смешивайте методы импорта в одном проекте. То есть, не импортируйте продукты Firebase с помощью потока пакетов ресурсов и с помощью потока менеджера пакетов Unity.

После загрузки для импорта:

  1. В открытом проекте Unity перейдите в Assets > Import Package > Custom Package .

  2. В окне «Импорт пакета Unity» нажмите «Импорт» .

Импортируйте пакеты Firebase с помощью менеджера пакетов Unity.

При импорте продуктов Firebase из файлов .tgz , загруженных из архива Google APIs for Unity , следует учитывать следующее:

  • Этот метод доступен только в версиях 2018.3 и выше.

  • Если в вашем проекте используется несколько продуктов Firebase, необходимо загрузить и обновить все продукты Firebase до одной и той же версии.

  • Не следует смешивать методы импорта в одном проекте. То есть, не следует импортировать продукты Firebase с помощью потока пакетов ресурсов и с помощью потока менеджера пакетов Unity.

  • Зависимости для каждого файла .tgz продукта связаны отдельно в своих собственных файлах .tgz . Вам необходимо загрузить и импортировать файл .tgz продукта и файлы .tgz зависимостей в правильном порядке:

    1. Менеджер внешних зависимостей ( com.google.external-dependency-manager )
    2. Firebase Core ( com.google.firebase.app )
    3. В вашем проекте используются продукты Firebase. Если вы используете Realtime Database или Cloud Storage , сначала импортируйте Authentication ( com.google.firebase.auth ).

После загрузки импортируйте файлы .tgz в свой проект одним из следующих способов:

Пользовательский интерфейс менеджера пакетов

  1. Откройте окно «Менеджер пакетов» в Unity.
  2. Нажмите на значок + в верхнем левом углу окна «Диспетчер пакетов» и выберите Add package from tarball , чтобы открыть файловый браузер.
  3. Выберите нужный архив в файловом браузере.

Некоторые старые версии Unity 2019 не поддерживают прямую добавление архивов tar. В этом случае вам потребуется:

  1. Распакуйте файл .tgz .
  2. Нажмите на значок + в верхнем левом углу окна «Диспетчер пакетов» и выберите Add package from disk , чтобы открыть файловый браузер.
  3. Выберите извлеченную папку в файловом браузере.

manifest.json

  1. Создайте новую папку рядом с папкой Packages вашего проекта и назовите её GooglePackages .
  2. Поместите файлы .tgz в эту папку.
  3. Откройте Packages/manifest.json в папке вашего проекта Unity с помощью текстового редактора.
  4. Добавьте запись для каждого пакета, который вы хотите импортировать, сопоставив имя пакета с его расположением на диске. Обязательно добавьте 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. Отредактируйте файл 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 для импорта.

Для перехода на пакеты ресурсов:

  1. Обратите внимание на текущие версии пакетов Firebase в вашем проекте и удалите их.

    1. В меню «Окно» выберите «Диспетчер пакетов ». В окне « Диспетчер пакетов » убедитесь, что выбран пункт «Пакеты: В проекте».
    2. Обратите внимание на версии импортированных пакетов Firebase.
    3. Щелкните по названию каждого пакета, затем нажмите «Удалить ». Обязательно удалите пакет External Dependency Manager ( .com.google.external-dependency-manager ), а также пакеты Firebase.
  2. Загрузите и импортируйте заменяющие файлы .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:

  1. Убедитесь, что все пакеты Firebase и пакет External Dependency Manager удалены из папки Assets , используя один из следующих способов.

    EDM4U UI

    1. В открытом проекте Unity перейдите в Assets > External Dependency Manager > Version Handler > Uninstall Managed Packages .
    2. Выберите все пакеты Firebase и менеджер внешних зависимостей.
    3. Нажмите «Удалить выбранный пакет» .

    Ручное снятие

    С помощью инструментов файловой системы вручную удалите следующие папки:

    • Assets/Editor Default Resources/Firebase
    • Assets/ExternalDependencyManager
    • Assets/Firebase
    • Assets/Parse
    • Assets/Plugins/iOS/Firebase
  2. Импортируйте пакеты с помощью Unity Package Manager, как описано выше на этой странице.