Вместо загрузки большого .zip файла, содержащего все файлы .unitypackage для .NET 3.X и .NET 4.X, вы можете загрузить отдельные пакеты с сайта API Google для Unity .
На сайте представлено:
- Отдельные файлы .NET 4.X
.unitypackageдля импорта в качестве пакетов ресурсов. - Отдельные архивы
.tgzдля импорта с помощью Unity Package Manager.
Это особенно полезно, когда ваше приложение использует один продукт Firebase, поскольку отдельные файлы .unitypackage содержат все необходимые зависимости, а файлы .tgz перечислены рядом со связанными файлами .tgz , от которых они зависят.
На этой странице приведены инструкции по использованию Unity Package Manager, поэтому будет полезно узнать об этом инструменте из документации Unity .
Импорт пакетов Firebase как активов
При импорте продуктов Firebase из файлов .unitypackage загруженных с сайта Google APIs для Unity , имейте в виду следующее:
Если вы используете несколько продуктов Firebase в своем проекте, вам необходимо загрузить и обновить все продукты Firebase до одной и той же версии.
Не смешивайте методы импорта в одном проекте. То есть не импортируйте продукты Firebase с помощью потока пакетов Asset и потока Unity Package Manager.
После загрузки, чтобы импортировать:
В открытом проекте Unity перейдите в раздел Assets > Import Package > Custom Package .
В окне Импорт пакета Unity нажмите Импорт .
Импорт пакетов Firebase с помощью диспетчера пакетов Unity
При импорте продуктов Firebase из файлов .tgz , загруженных из архива Google APIs для Unity , имейте в виду следующее:
Этот метод доступен только в версии 2018.3+.
Если вы используете несколько продуктов Firebase в своем проекте, вам необходимо загрузить и обновить все продукты Firebase до одной и той же версии.
Не смешивайте методы импорта в одном проекте. То есть не импортируйте продукты Firebase с помощью потока пакетов Asset и потока менеджера пакетов Unity.
Зависимости для каждого
.tgzфайла продукта связаны с его собственными.tgzфайлами. Необходимо загрузить и импортировать.tgzфайл продукта и.tgzфайлы зависимостей в правильном порядке:- Менеджер внешних зависимостей (
com.google.external-dependency-manager) - Ядро Firebase (
com.google.firebase.app) - Продукты Firebase, используемые в вашем проекте. Если вы используете Realtime Database или Cloud Storage , сначала импортируйте Authentication (
com.google.firebase.auth).
- Менеджер внешних зависимостей (
После загрузки импортируйте файлы .tgz в свой проект одним из следующих способов:
Пользовательский интерфейс менеджера пакетов
- Откройте окно менеджера пакетов Unity.
- Щелкните значок
+в левом верхнем углу окна диспетчера пакетов и выберитеAdd package from tarballчтобы открыть обозреватель файлов. - Выберите нужный tarball в файловом браузере.
Некоторые старые версии Unity 2019 не поддерживают прямое добавление tar-архивов. В этом случае вам потребуется:
- Разархивируйте файл
.tgz. - Нажмите значок
+в левом верхнем углу окна диспетчера пакетов и выберите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 в вашем проекте и удалите их.
- В меню «Окно» выберите «Диспетчер пакетов» . В окне « Диспетчер пакетов» убедитесь, что выбран пункт «Пакеты: в проекте».
- Обратите внимание на версии импортированных пакетов Firebase.
- Щёлкните по названию каждого пакета, затем нажмите «Удалить» . Обязательно удалите пакет менеджера внешних зависимостей (
.com.google.external-dependency-manager), а также пакеты Firebase.
Загрузите и импортируйте файлы
.unitypackageдля замены. Есть два варианта:- Если вы можете обновить каждый пакет до последней версии, загрузите zip-файл Firebase Unity SDK и импортируйте его, как описано в разделе Добавление Firebase в ваш проект Unity .
- Если вам необходимо сохранить текущие версии
.unitypackage, вы можете загрузить и импортировать отдельные пакеты, как описано выше на этой странице.
Миграция из пакетов ресурсов в диспетчер пакетов Unity
В некоторых случаях вам может потребоваться переключиться с импорта продуктов в папку Assets на импорт и отслеживание продуктов с помощью Unity Package Manager.
Если вы не уверены, какой метод импорта используете, откройте файл Packages/manifest.json в папке проекта Unity. Если файл содержит записи, начинающиеся с com.google.firebase ваш проект уже использует Unity Package Manager для импорта.
Чтобы перейти на Unity Package Manager:
Убедитесь, что все пакеты Firebase и пакет External Dependency Manager удалены из папки
Assets, используя один из следующих методов.Пользовательский интерфейс EDM4U
- В открытом проекте Unity перейдите в раздел Активы > Менеджер внешних зависимостей > Обработчик версий > Удалить управляемые пакеты .
- Выберите все пакеты Firebase и диспетчер внешних зависимостей.
- Нажмите Удалить выбранный пакет .
Ручное удаление
Используя инструменты файловой системы, вручную удалите следующие папки:
-
Assets/Editor Default Resources/Firebase -
Assets/ExternalDependencyManager -
Assets/Firebase -
Assets/Parse -
Assets/Plugins/iOS/Firebase
Импортируйте пакеты с помощью менеджера пакетов Unity, как описано выше на этой странице.