Check out what’s new from Firebase at Google I/O 2022. Learn more

其他 Unity 安裝選項

您可以從Google APIs for Unity 站點下載單個包,而不是下載包含 .NET 3.X 和 .NET 4.X 的所有.unitypackage文件的大型.zip文件。

該網站提供:

  • 單獨的 .NET 4.X .unitypackage文件作為資產包導入。
  • 使用 Unity 包管理器導入的單個.tgz存檔。

這在您的應用使用單個 Firebase 產品時特別有用,因為各個.unitypackage文件包含所有需要的依賴項,並且.tgz文件與它們所依賴的相關.tgz文件一起列出。

此頁面提供了涉及 Unity 包管理器的說明,因此最好從 Unity 文檔中了解該工具。

將 Firebase 包作為資產導入

Google APIs for Unity 網站下載的.unitypackage文件導入 Firebase 產品時,請記住以下幾點:

  • 如果您在項目中使用多個 Firebase 產品,則必須下載所有 Firebase 產品並將其升級到相同版本。

  • 不要在一個項目中混合導入方法。也就是說,不要使用資產包流和 Unity 包管理器流導入 Firebase 產品。

下載後,導入:

  1. 在您打開的 Unity 項目中,導航到Assets > Import Package > Custom Package

  2. 在“導入 Unity 包”窗口中,單擊“導入”。

使用 Unity 包管理器導入 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 核心 ( com.google.firebase.app )
    3. 您的項目中使用的 Firebase 產品。如果您使用實時數據庫或云存儲,請先導入身份驗證 ( com.google.firebase.auth )。

下載後,使用以下方法之一將.tgz文件導入您的項目:

包管理器用戶界面

  1. 打開 Unity 的包管理器窗口。
  2. 單擊 Package Manager 窗口左上角的+圖標,然後選擇Add package from tarball以打開文件瀏覽器。
  3. 在文件瀏覽器中選擇所需的 tarball。

一些舊版本的 Unity 2019 不支持直接添加 tarball。在這種情況下,您需要:

  1. 解壓縮.tgz文件。
  2. 單擊 Package Manager 窗口左上角的+圖標,然後選擇Add package from disk打開文件瀏覽器。
  3. 在文件瀏覽器中選擇提取的文件夾。

清單.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 包管理器遷移到資產包

在某些情況下,您可能希望從使用 Unity 包管理器跟踪 Firebase 產品切換到在Assets文件夾下導入產品。

如果您不確定您使用的是哪種導入方法,請在 Unity 項目文件夾中打開文件Packages/manifest.json 。如果文件包含以com.google.firebase開頭的條目,則您的項目使用 Unity 包管理器進行導入。

要遷移到資產包:

  1. 記下項目中當前的 Firebase 軟件包版本並將其刪除。

    1. 窗口菜單中,選擇包管理器。在Package Manager窗口中,確保選中“Packages: In Project”。
    2. 請注意導入的 Firebase 軟件包的版本。
    3. 單擊每個包名稱,然後單擊刪除。請務必刪除 External Dependency Manager 包 ( .com.google.external-dependency-manager ) 以及 Firebase 包。
  2. 下載並導入替換.unitypackage文件。你有兩個選擇:

    • 如果您可以升級到每個軟件包的最新版本,請下載 Firebase Unity SDK zip 文件並按照將Firebase 添加到您的 Unity 項目中所述進行導入。
    • 如果您需要保留當前的.unitypackage版本,您可以按照本頁上述說明下載和導入各個包。

從資產包遷移到 Unity 包管理器

在某些情況下,您可能希望從導入Assets文件夾下的產品切換到使用 Unity Package Manager 導入和跟踪產品。

如果您不確定您使用的是哪種導入方法,請在 Unity 項目文件夾中打開文件Packages/manifest.json 。如果文件包含以com.google.firebase開頭的條目,則您的項目已經在使用 Unity 包管理器進行導入。

要遷移到 Unity 包管理器:

  1. 確保使用以下任一方法從Assets文件夾中刪除所有 Firebase 包和 External Dependency Manager 包。

    包管理器用戶界面

    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 包管理器導入包,如本頁上文所述