安装适用于 Unity 的 Google 软件包

适用于 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

  1. 在项目的 Packages 文件夹旁边创建一个新文件夹,并将其命名为 GooglePackages
  2. .tgz 文件放在该文件夹中。
  3. 使用文本编辑器打开 Unity 项目文件夹下的 Packages/manifest.json
  4. 为要安装的每个软件包添加一个条目,将软件包名称映射到磁盘上相对于 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...
      }
    }
    
  5. 保存 manifest.json 文件。

  6. Unity 重新获得焦点时,将重新加载 manifest.json 并导入新添加的软件包。

某些旧版 Unity 不支持 manifest.json 中的 .tgz 文件。在这种情况下,您应该:

  1. 解压缩 .tgz 文件。
  2. 将提取的文件夹放在 GooglePackages 文件夹中。
  3. 请修改 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...
      }
    }
    

软件包管理器界面

  1. 打开 Unity 的软件包管理器窗口。
  2. 点击软件包管理器窗口左上角的 + 图标,然后选择 Add package from tarball 以打开文件浏览器。

    Unity Package Manager 窗口的屏幕截图,其中包含

  3. 在文件浏览器中选择所需的 tar 压缩包。

某些旧版 Unity 不支持直接添加 tar 压缩文件。在这种情况下,您需要执行以下操作:

  1. 解压缩 .tgz 文件。
  2. 点击软件包管理器窗口左上角的 + 图标,然后选择 Add package from disk 以打开文件浏览器。

    Unity Package Manager 窗口的屏幕截图,其中包含

  3. 在文件浏览器中选择提取的文件夹。

请务必也导入软件包的依赖项的 .tgz 文件,您可以在归档页面的所需软件包部分下找到此文件。

例如,如果您要安装 com.google.firebase.storage,请按以下顺序安装这些 .tgz 文件:

  1. 外部依赖项管理器 (com.google.external-dependency-manager)
  2. Firebase 核心 (com.google.firebase.app)
  3. Firebase Authentication(com.google.firebase.auth
  4. 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 软件包:

软件包管理器界面

  1. 打开 Unity 的软件包管理器窗口。
  2. 在左上角的下拉菜单中选择 In Project

    Unity Package Manager 窗口的屏幕截图,其中包含

  3. 在搜索栏中输入 com.google,以过滤出 Google 软件包。

    Unity Package Manager 窗口的屏幕截图

  4. 点击每个软件包名称,然后点击 Remove

manifest.json

  1. 使用文本编辑器打开 Unity 项目文件夹下的 Packages/manifest.json
  2. 检查“依赖项”下是否有来自 Google 的任何软件包。软件包名称应以“com.google.com”开头,例如“com.google.firebase.app”。
  3. 删除这些行并保存 json 文件。
  4. Unity 重新获得焦点时,将重新加载 manifest.json 文件并移除已删除的软件包。

从 Unity Package Manager 中卸载这些软件包后,您可以从归档页面下载并导入替换的 .unitypackage 文件。

从资源包迁移到 UPM 软件包

在某些情况下,您可能需要从“资产”树下安装产品,改为使用 Unity Package Manager 安装和跟踪产品。

如果您不确定自己使用的是哪种安装方法,请在 Unity 界面中检查“资源”下方的“项目”标签页中是否会显示所需的 Google 软件包。

如需迁移到 UPM 软件包,请执行以下操作:

  1. 确保从“素材资源”文件夹中移除所有 Google 软件包。

    • 如需卸载 Firebase 软件包,请按照这些说明操作。
    • 如需卸载适用于 Unity 的 Play 插件,请删除 Assets 下的 GooglePlayPlugins 文件夹。
  2. 使用 Unity Package Manager 安装软件包,如上文所述。

针对具体产品的迁移说明

如需了解 Firebase 说明,请参阅此处