适用于 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
文件 (2018.4+) 的 UPM 软件包
使用以下方法之一将 .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 的软件包管理器窗口。
点击软件包管理器窗口左上角的
+
图标,然后选择Add package from tarball
以打开文件浏览器。在文件浏览器中选择所需的 tar 压缩包。
某些旧版 Unity 不支持直接添加 tar 压缩文件。在这种情况下,您需要执行以下操作:
- 解压缩
.tgz
文件。 点击软件包管理器窗口左上角的
+
图标,然后选择Add package from disk
以打开文件浏览器。在文件浏览器中选择提取的文件夹。
请务必也导入软件包的依赖项的 .tgz
文件,您可以在归档页面的所需软件包部分下找到此文件。
例如,如果您要安装 com.google.firebase.storage
,请按以下顺序安装这些 .tgz
文件:
- 外部依赖项管理器 (
com.google.external-dependency-manager
) - Firebase 核心 (
com.google.firebase.app
) - Firebase Authentication(
com.google.firebase.auth
) - Firebase 存储 (
com.google.firebase.storage
)
如果您希望一次性添加所有 .tgz
文件,而无需担心顺序,则可以按照 manifest.json 标签页中的说明操作。
版本控制
如果您使用版本控制软件管理项目文件,我们建议您将相关的 .tgz
文件添加到版本控制中。您可以手动修改项目的 manifest.json
(请参阅上文说明),并使用相对路径引用本地 .tgz
文件。
如果您使用的是 git,我们建议您使用 Git Large File Storage (LFS) 来管理大型 .tgz
文件。
从 UPM 软件包迁移到资源软件包
在某些情况下,您可能需要从使用 Unity Package Manager 管理 Google 软件包,改为在“Assets”文件夹下安装软件包。
请使用以下任一方法从 Unity Package Manager 中移除所有 Google 软件包:
软件包管理器界面
- 打开 Unity 的软件包管理器窗口。
在左上角的下拉菜单中选择
In Project
。在搜索栏中输入
com.google
,以过滤出 Google 软件包。点击每个软件包名称,然后点击
Remove
。
manifest.json
- 使用文本编辑器打开 Unity 项目文件夹下的
Packages/manifest.json
。 - 检查“依赖项”下是否有来自 Google 的任何软件包。软件包名称应以“com.google.com”开头,例如“com.google.firebase.app”。
- 删除这些行并保存 json 文件。
- Unity 重新获得焦点时,将重新加载
manifest.json
文件并移除已删除的软件包。
从 Unity Package Manager 中卸载这些软件包后,您可以从归档页面下载并导入替换的 .unitypackage
文件。
从资源包迁移到 UPM 软件包
在某些情况下,您可能需要从“资产”树下安装产品,改为使用 Unity Package Manager 安装和跟踪产品。
如果您不确定自己使用的是哪种安装方法,请在 Unity 界面中检查“资源”下方的“项目”标签页中是否会显示所需的 Google 软件包。
如需迁移到 UPM 软件包,请执行以下操作:
确保从“素材资源”文件夹中移除所有 Google 软件包。
- 如需卸载 Firebase 软件包,请按照这些说明操作。
- 如需卸载适用于 Unity 的 Play 插件,请删除
Assets
下的GooglePlayPlugins
文件夹。
使用 Unity Package Manager 安装软件包,如上文所述。
针对具体产品的迁移说明
如需了解 Firebase 说明,请参阅此处。