無需下載包含 .NET 3.X 和 .NET 4.X 的所有.unitypackage
文件的大型.zip
文件,您可以從Google APIs for Unity 站點下載單獨的包。
該網站提供:
- 要作為資產包導入的單個 .NET 4.X
.unitypackage
文件。 - 要使用 Unity 包管理器導入的單個
.tgz
存檔。
當您的應用程序使用單個 Firebase 產品時,這尤其有用,因為各個.unitypackage
文件包含所有需要的依賴項,並且.tgz
文件與它們所依賴的相關.tgz
文件一起列出。
此頁面提供了涉及 Unity 包管理器的說明,因此最好從 Unity 文檔 中了解該工具。
將 Firebase 包作為資產導入
從Google APIs for Unity 站點下載的.unitypackage
文件導入 Firebase 產品時,請記住以下幾點:
如果您在項目中使用多個 Firebase 產品,則必須下載所有 Firebase 產品並將其升級到同一版本。
不要在一個項目中混用導入方法。也就是說,不要使用資產包流程和使用 Unity 包管理器流程導入 Firebase 產品。
下載後導入:
在您打開的 Unity 項目中,導航到Assets > Import Package > Custom Package 。
在“導入 Unity 包”窗口中,單擊“導入” 。
使用 Unity 包管理器導入 Firebase 包
從Google APIs for Unity archive下載的.tgz
文件導入 Firebase 產品時,請記住以下幾點:
此方法僅適用於 2018.3+。
如果您在項目中使用多個 Firebase 產品,則必須下載所有 Firebase 產品並將其升級到同一版本。
不要在一個項目中混用導入方法。也就是說,不要使用資產包流程和 Unity 包管理器流程導入 Firebase 產品。
每個產品
.tgz
文件的依賴項都鏈接在它們自己的.tgz
文件中。您必須以正確的順序下載並導入產品.tgz
文件和依賴項.tgz
文件:- 外部依賴管理器 (
com.google.external-dependency-manager
) - Firebase 核心 (
com.google.firebase.app
) - 您的項目中使用的 Firebase 產品。如果您使用實時數據庫或云存儲,請先導入身份驗證 (
com.google.firebase.auth
)。
- 外部依賴管理器 (
下載後,使用以下方法之一將.tgz
文件導入到您的項目中:
包管理器用戶界面
- 打開 Unity 的包管理器窗口。
- 單擊包管理器窗口左上角的
+
圖標,然後選擇Add package from tarball
以打開文件瀏覽器。 - 在文件瀏覽器中選擇所需的 tarball。
一些舊版本的 Unity 2019 不支持直接添加壓縮包。在這種情況下,您需要:
- 解壓縮
.tgz
文件。 - 單擊包管理器窗口左上角的
+
圖標,然後選擇Add package from disk
以打開文件瀏覽器。 - 在文件瀏覽器中選擇提取的文件夾。
清單.json
- 在項目的
Packages
文件夾旁邊創建一個新文件夾並將其命名為GooglePackages
。 - 將
.tgz
文件放入該文件夾中。 - 使用文本編輯器打開 Unity 項目文件夾下的
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
文件。 編輯您的
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 Package Manager 跟踪 Firebase 產品切換到在Assets
文件夾下導入產品。
如果您不確定您使用的是哪種導入方法,請在您的 Unity 項目文件夾中打開文件Packages/manifest.json
。如果文件包含以com.google.firebase
開頭的條目,則您的項目使用 Unity Package Manager 進行導入。
遷移到資產包:
記下項目中當前的 Firebase 包版本並將其刪除。
- 從窗口菜單中,選擇包管理器。在“包管理器”窗口中,確保選中“包:在項目中”。
- 請注意導入的 Firebase 包的版本。
- 單擊每個包名稱,然後單擊Remove 。請務必刪除外部依賴管理器包 (
.com.google.external-dependency-manager
) 以及 Firebase 包。
下載並導入替換
.unitypackage
文件。你有兩個選擇:- 如果您可以升級到每個包的最新版本,請下載 Firebase Unity SDK zip 文件並按照將Firebase 添加到您的 Unity 項目中所述進行導入。
- 如果您需要保留當前的
.unitypackage
版本,您可以按照本頁上文所述下載並導入單個包。
從資產包遷移到 Unity 包管理器
在某些情況下,您可能希望從在Assets
文件夾下導入產品切換到使用 Unity Package Manager 導入和跟踪產品。
如果您不確定您使用的是哪種導入方法,請在您的 Unity 項目文件夾中打開文件Packages/manifest.json
。如果文件包含以com.google.firebase
開頭的條目,您的項目已經在使用 Unity Package Manager 進行導入。
要遷移到 Unity 包管理器:
使用以下任一方法,確保所有 Firebase 包和外部依賴管理器包都已從
Assets
文件夾中刪除。包管理器用戶界面
- 在打開的 Unity 項目中,導航到Assets > External Dependency Manager > Version Handler > Uninstall Managed Packages 。
- 選擇所有 Firebase 包和外部依賴管理器。
- 單擊卸載選定的程序包。
手動移除
使用文件系統工具,手動刪除以下文件夾:
-
Assets/Editor Default Resources/Firebase
-
Assets/ExternalDependencyManager
-
Assets/Firebase
-
Assets/Parse
-
Assets/Plugins/iOS/Firebase
使用 Unity 包管理器導入包,如本頁上文所述。