Вместо того чтобы скачивать большой файл .zip, содержащий все файлы .unitypackage для .NET 3.X и .NET 4.X, вы можете скачать отдельные пакеты с сайта Google APIs for Unity.
На сайте можно:
- Отдельные файлы .NET 4.X
.unitypackage, которые нужно импортировать как пакеты объектов. - Отдельные архивы
.tgzдля импорта с помощью менеджера пакетов Unity.
Это особенно полезно, если в приложении используется только один продукт Firebase, поскольку отдельные файлы .unitypackage содержат все необходимые зависимости, а файлы .tgz перечислены рядом с файлами .tgz, от которых они зависят.
На этой странице приведены инструкции по работе с менеджером пакетов Unity, поэтому рекомендуем ознакомиться с документацией Unity.
Как импортировать пакеты Firebase в качестве объектов
При импорте продуктов Firebase из файлов .unitypackage, скачанных с сайта API Google для Unity, учитывайте следующее:
Если в проекте используется несколько продуктов Firebase, скачайте и обновите их все до одной версии.
Не используйте в одном проекте разные способы импорта. То есть не импортируйте продукты Firebase с помощью пакета ресурсов и менеджера пакетов Unity.
Чтобы импортировать файл после скачивания:
В открытом проекте Unity выберите Assets (Ресурсы) > Import Package (Импортировать пакет) > Custom Package (Специальный пакет).
В окне Import Unity Package нажмите Import.
Как импортировать пакеты Firebase с помощью Unity Package Manager
При импорте продуктов Firebase из файлов .tgz, скачанных из архива API Google для Unity, учитывайте следующее:
Этот метод доступен только в версии 2018.3 и более поздних.
Если в проекте используется несколько продуктов 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, чтобы открыть браузер файлов. - В браузере файлов выберите нужный архив tar.
Некоторые более ранние версии 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 на пакеты объектов
В некоторых случаях вам может потребоваться перейти с использования Менеджера пакетов Unity для отслеживания продуктов Firebase на импорт продуктов в папку Assets.
Если вы не знаете, какой метод импорта используете, откройте файл Packages/manifest.json в папке проекта Unity. Если в файле есть записи, начинающиеся с com.google.firebase, то для импорта в проекте использовался менеджер пакетов Unity.
Чтобы перейти на пакеты объектов:
Запишите текущие версии пакетов 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
В некоторых случаях вам может понадобиться перейти с импорта продуктов из папки Assets на импорт и отслеживание продуктов с помощью менеджера пакетов Unity.
Если вы не знаете, какой метод импорта используете, откройте файл Packages/manifest.json в папке проекта Unity. Если в файле есть записи, начинающиеся с com.google.firebase, ваш проект уже использует менеджер пакетов Unity для импорта.
Чтобы перейти на Unity Package Manager:
Убедитесь, что все пакеты Firebase и пакет External Dependency Manager удалены из папки
Assets. Это можно сделать двумя способами:Интерфейс EDM4U
- В открытом проекте Unity выберите Assets (Ресурсы) > External Dependency Manager (Менеджер внешних зависимостей) > Version Handler (Обработчик версий) > Uninstall Managed Packages (Удалить управляемые пакеты).
- Выберите все пакеты Firebase и External Dependency Manager.
- Нажмите Удалить выбранный пакет.
Удаление вручную
Вручную удалите следующие папки с помощью инструментов файловой системы:
Assets/Editor Default Resources/FirebaseAssets/ExternalDependencyManagerAssets/FirebaseAssets/ParseAssets/Plugins/iOS/Firebase
Импортируйте пакеты с помощью Менеджера пакетов Unity, как описано выше.