适用于 Unity 的 Google 软件包以两种不同的格式分发:
- 资源包:
- 具有
.unitypackage
扩展程序。 - 安装到项目的
Assets
目录中。 - 可以在 Unity 5 及更高版本中导入。
- 通常包含依赖软件包。
- 具有
- Unity Package Manager (UPM) 软件包:
- 具有
.tgz
扩展程序。 - 安装到项目的
Packages
目录中。 - 可在 Unity 2018.4 及更高版本中导入。
- 引用需要单独安装的依赖软件包。
- 具有
软件包页面包含所有可用软件包的最新 .unitypackage
文件。
Archive 页面包含所有软件包版本的 .unitypackage
和 .tgz
文件。
您可以在下面找到有关如何安装这两种软件包的说明,以及从一种类型转换到另一种软件包的迁移说明。
熟悉这些安装选项后,请务必参阅其他特定于 Firebase 的说明。
使用 .unitypackage
文件导入资源包
选择 Unity 菜单选项 Assets > Import package > Custom Package
并导入所有项,以导入 .unitypackage
文件。这会将软件包内容添加到项目的 Assets 目录下。
使用 .tgz
文件导入 UPM 软件包 (2018.4+)
使用以下方法之一,将 .tgz
文件导入您的项目中:
manifest.json
- 在项目的
Packages
文件夹旁边创建一个新文件夹,并将其命名为GooglePackages
。 - 将
.tgz
文件放入该文件夹中。 - 使用文本编辑器打开 Unity 项目文件夹下的
Packages/manifest.json
。 为要安装的每个软件包添加一个条目,将软件包名称映射到磁盘上相对于
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... } }
保存 manifest.json 文件。
Unity 重新获得焦点时,将重新加载 manifest.json 并导入新添加的软件包。
某些旧版 Unity 不支持 manifest.json 中的 .tgz
文件。在这种情况下,您应该:
- 解压缩
.tgz
文件。 - 将解压缩的文件夹放入
GooglePackages
文件夹中。 修改 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 窗口。
点击软件包管理器窗口左上角的
+
图标,然后选择Add package from tarball
以打开文件浏览器。在文件浏览器中选择所需的 tarball。
某些旧版 Unity 不支持直接添加 tar 压缩文件。在这种情况下,您需要执行以下操作:
- 解压缩
.tgz
文件。 点击软件包管理器窗口左上角的
+
图标,然后选择Add package from disk
以打开文件浏览器。在文件浏览器中选择已解压的文件夹。
此外,请务必导入软件包依赖项的 .tgz
文件,您可以在归档页面中所需软件包的部分下找到该文件。
例如,如果您要安装 com.google.firebase.storage
,则应按以下顺序安装这些 .tgz
文件:
- 外部依赖项管理器 (
com.google.external-dependency-manager
) - Firebase Core (
com.google.firebase.app
) - Firebase 身份验证 (
com.google.firebase.auth
) - Firebase 存储 (
com.google.firebase.storage
)
如果您希望一次添加所有 .tgz
文件,而无需担心顺序,请按照 manifest.json 标签页中的说明操作。
版本控制
如果您使用版本控制软件管理项目文件,我们建议您将相关的 .tgz
文件添加到版本控制中。您可以手动修改项目的 manifest.json
(请参阅上述说明),并使用相对路径引用本地 .tgz
文件。
如果您使用的是 Git,我们建议您使用 Git 大文件存储 (LFS) 来管理大型 .tgz
文件。
从 UPM 软件包迁移到资源软件包
在某些情况下,您可能需要从使用 Unity Package Manager 管理 Google 软件包,改为在 Assets 文件夹下安装软件包。
请确保使用以下任一方法从 Unity Package Manager 中移除所有 Google 软件包:
软件包管理器界面
- 打开 Unity 的 Package Manager 窗口。
在左上角的下拉菜单中选择
In Project
。在搜索栏中输入
com.google
即可过滤 Google 软件包。点击每个软件包名称,然后点击
Remove
。
manifest.json
- 使用文本编辑器打开 Unity 项目文件夹下的
Packages/manifest.json
。 - 检查“dependencies”下是否有来自 Google 的任何软件包。软件包名称应以“com.google”开头,例如“com.google.firebase.app”。
- 删除这些行并保存 JSON 文件。
- Unity 重新获得焦点时,将会重新加载
manifest.json
文件并移除已删除的软件包。
从 Unity Package Manager 卸载这些软件包后,您可以从归档页面下载并导入替换 .unitypackage
文件。
从资源软件包迁移到 UPM 软件包
在某些情况下,您可能需要从在 Assets 树下安装产品,改为使用 Unity Package Manager 安装和跟踪产品。
如果您不确定自己使用的是哪种安装方法,请在 Unity 界面中的“Project”标签页的“Assets”下检查所需的 Google 软件包是否显示。
如需迁移到 UPM 软件包,请执行以下操作:
请务必从“Assets”文件夹中移除所有 Google 软件包。
- 如需卸载 Firebase 软件包,请按照这些说明操作。
- 如需卸载适用于 Unity 的 Play 插件,请删除
Assets
下的GooglePlayPlugins
文件夹。
按照上文所述,使用 Unity Package Manager 安装软件包。
特定产品的迁移说明
如需查看 Firebase 说明,请点击此处。