其他 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 產品。
下載後,導入:
在您打開的 Unity 項目中,導航到Assets > Import Package > Custom Package 。
在“導入 Unity 包”窗口中,單擊“導入”。
使用 Unity 包管理器導入 Firebase 包
從Google APIs for Unity 存檔下載的.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 的包管理器窗口。
- 單擊 Package Manager 窗口左上角的
+
圖標,然後選擇Add package from tarball
以打開文件瀏覽器。 - 在文件瀏覽器中選擇所需的 tarball。
一些舊版本的 Unity 2019 不支持直接添加 tarball。在這種情況下,您需要:
- 解壓縮
.tgz
文件。 - 單擊 Package Manager 窗口左上角的
+
圖標,然後選擇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 包管理器跟踪 Firebase 產品切換到在Assets
文件夾下導入產品。
如果您不確定您使用的是哪種導入方法,請在 Unity 項目文件夾中打開文件Packages/manifest.json
。如果文件包含以com.google.firebase
開頭的條目,則您的項目使用 Unity 包管理器進行導入。
要遷移到資產包:
記下項目中當前的 Firebase 軟件包版本並將其刪除。
- 從窗口菜單中,選擇包管理器。在Package Manager窗口中,確保選中“Packages: In Project”。
- 請注意導入的 Firebase 軟件包的版本。
- 單擊每個包名稱,然後單擊刪除。請務必刪除 External Dependency Manager 包 (
.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 包管理器進行導入。
要遷移到 Unity 包管理器:
確保使用以下任一方法從
Assets
文件夾中刪除所有 Firebase 包和 External Dependency Manager 包。包管理器用戶界面
- 在您打開的 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 包管理器導入包,如本頁上文所述。