其他 Unity 安裝選項

您可以從 Unity 專用的 Google API 網站下載個別套件,而非下載包含 .NET 3.X 和 .NET 4.X 所有 .unitypackage 檔案的大型 .zip 檔案。

該網站提供以下內容:

  • 個別的 .NET 4.X .unitypackage 檔案,可匯入為資產套件。
  • 個別 .tgz 封存檔,可使用 Unity Package Manager 匯入。

當應用程式使用單一 Firebase 產品時,這種做法特別實用,因為個別的 .unitypackage 檔案會包含所有必要的依附元件,而 .tgz 檔案會與其依附的相關 .tgz 檔案一併列出。

本頁面提供 Unity Package Manager 相關操作說明,因此建議您參閱 Unity 說明文件,瞭解這項工具。

將 Firebase 套件匯入為資產

Google API for Unity 網站下載 .unitypackage 檔案時,如果要匯入 Firebase 產品,請注意下列事項:

  • 如果您在專案中使用多項 Firebase 產品,請務必下載並將所有 Firebase 產品升級至相同版本。

  • 請勿在單一專案中混用匯入方法。也就是說,請勿使用 Asset 套件流程和 Unity 套件管理員流程匯入 Firebase 產品。

下載完成後,如要匯入:

  1. 在您開啟的 Unity 專案中,依序前往「Assets」 >「Import Package」 >「Custom Package」

  2. 在「Import Unity Package」視窗中,按一下「Import」

使用 Unity Package Manager 匯入 Firebase 套件

Google APIs for Unity 存檔下載的 .tgz 檔案匯入 Firebase 產品時,請注意下列事項:

  • 這個方法僅適用於 2018.3 以上版本。

  • 如果您在專案中使用多項 Firebase 產品,請務必下載並將所有 Firebase 產品升級至相同版本。

  • 請勿在單一專案中混用匯入方法。也就是說,請勿使用資產套件流程和 Unity 套件管理工具流程匯入 Firebase 產品。

  • 每個產品 .tgz 檔案的依附元件會在其專屬的 .tgz 檔案中連結。您必須依照正確順序下載及匯入產品 .tgz 檔案和依附元件 .tgz 檔案:

    1. 外部依附元件管理工具 (com.google.external-dependency-manager)
    2. Firebase Core (com.google.firebase.app)
    3. 專案中使用的 Firebase 產品。如果您使用 Realtime DatabaseCloud Storage,請先匯入 Authentication (com.google.firebase.auth)。

下載完成後,請使用下列任一方法將 .tgz 檔案匯入專案:

套件管理工具使用者介面

  1. 開啟 Unity 的 Package Manager 視窗。
  2. 按一下 Package Manager 視窗左上角的 + 圖示,然後選取 Add package from tarball 即可開啟檔案瀏覽器。
  3. 在檔案瀏覽器中選取所需的 tarball。

部分舊版 Unity 2019 不支援直接新增 tarball。在這種情況下,您需要:

  1. 解壓縮 .tgz 檔案。
  2. 按一下 Package Manager 視窗左上角的 + 圖示,然後選取 Add package from disk 即可開啟檔案瀏覽器。
  3. 在檔案瀏覽器中選取已解壓縮的資料夾。

manifest.json

  1. 在專案的 Packages 資料夾旁邊建立新資料夾,並將其命名為 GooglePackages
  2. .tgz 檔案放入該資料夾。
  3. 使用文字編輯器開啟 Unity 專案資料夾下的 Packages/manifest.json
  4. 為每個要匯入的套件新增項目,將套件名稱對應至磁碟上的所在位置。請務必將 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. 編輯 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 遷移至 Asset 套件

在某些情況下,您可能會想改用 Unity Package Manager 追蹤 Firebase 產品,並匯入 Assets 資料夾下的產品。

如果不確定使用的是哪種匯入方法,請在 Unity 專案資料夾中開啟檔案 Packages/manifest.json。如果檔案包含以 com.google.firebase 開頭的項目,表示您的專案使用 Unity Package Manager 進行匯入。

如要遷移至資產包,請按照下列步驟操作:

  1. 請記下專案中目前的 Firebase 套件版本,然後移除這些版本。

    1. 在「Window」選單中,選取「Package Manager」。在「Package Manager」視窗中,確認已選取「Packages: In Project」。
    2. 請注意匯入的 Firebase 套件版本。
    3. 依序按一下每個套件名稱,然後點選「移除」。請務必移除外部依附元件管理工具套件 (.com.google.external-dependency-manager) 和 Firebase 套件。
  2. 下載並匯入替換的 .unitypackage 檔案。您可以採用兩種方法:

    • 如果可以升級至各套件最新版本,請下載 Firebase Unity SDK ZIP 檔案,然後按照「將 Firebase 新增至 Unity 專案」一文所述匯入。
    • 如果您需要保留目前的 .unitypackage 版本,可以按照本頁上方所述,下載及匯入個別套件。

從資產包遷移至 Unity Package Manager

在某些情況下,您可能會想改為使用 Unity Package Manager 匯入及追蹤 Assets 資料夾下的產品。

如果不確定使用的是哪種匯入方法,請在 Unity 專案資料夾中開啟檔案 Packages/manifest.json。如果檔案包含以 com.google.firebase 開頭的項目,表示您的專案已使用 Unity Package Manager 進行匯入。

如要改用 Unity Package Manager,請按照下列步驟操作:

  1. 請使用下列任一方法,確認已從 Assets 資料夾中移除所有 Firebase 套件和 External Dependency Manager 套件。

    EDM4U UI

    1. 在您開啟的 Unity 專案中,依序前往「Assets」>「External Dependency Manager」>「Version Handler」>「Uninstall Managed Packages」
    2. 選取所有 Firebase 套件和外部依附元件管理工具。
    3. 按一下「解除安裝所選套件」

    手動移除

    請使用檔案系統工具,手動刪除下列資料夾:

    • Assets/Editor Default Resources/Firebase
    • Assets/ExternalDependencyManager
    • Assets/Firebase
    • Assets/Parse
    • Assets/Plugins/iOS/Firebase
  2. 使用 Unity Package Manager 匯入套件,如本頁上方所述。