將 Firebase 添加到您的 Unity 項目
使用我們的 Firebase Unity SDK 為您的Unity遊戲提供動力。
為了展示將 Firebase 插入 Unity 項目是多麼容易,我們製作了一個示例遊戲 MechaHamster,您可以從GitHub 、 App Store和Google Play Store下載該遊戲。
在我們的Firebase 遊戲頁面上了解有關使用 Firebase 為您的遊戲提供動力的更多信息。
已將 Firebase 添加到您的 Unity 項目?確保您使用的是最新版本的Firebase Unity SDK 。
先決條件
安裝 Unity 2018.4 或更高版本。早期版本也可能兼容,但不會受到積極支持。對 Unity 2018.4 的支持被視為已棄用,在下一個主要版本之後將不再積極支持。
(僅限 iOS)安裝以下內容:
- Xcode 13.3.1 或更高版本
- CocoaPods 1.10.0 或更高版本
確保您的 Unity 項目滿足以下要求:
- 對於 iOS - 針對 iOS 10 或更高版本
對於 Android - 目標 API 級別 19 (KitKat) 或更高
設置物理設備或使用模擬器來運行您的應用程序。
對於 iOS — 設置物理 iOS 設備或使用 iOS 模擬器。
對於 iOS 上的雲消息傳遞,以下是先決條件:
- 設置物理 iOS 設備。
- 為您的Apple Developer 帳戶獲取 Apple Push Notification Authentication Key。
- 在 XCode 中的App > Capabilities下啟用推送通知。
對於 Android -模擬器必須在 Google Play 中使用模擬器圖像。
- 使用您的 Google 帳戶登錄 Firebase 。
如果您還沒有 Unity 項目並且只想試用 Firebase 產品,您可以下載我們的快速入門示例之一。
第 1 步:創建 Firebase 項目
在將 Firebase 添加到 Unity 項目之前,您需要創建一個 Firebase 項目以連接到您的 Unity 項目。請訪問了解 Firebase 項目以了解有關 Firebase 項目的更多信息。
第 2 步:向 Firebase 註冊您的應用
您可以註冊一個或多個應用或遊戲來連接您的 Firebase 項目。
轉到Firebase 控制台。
在項目概覽頁面的中心,單擊Unity圖標 (
) 以啟動設置工作流程。如果您已將應用添加到 Firebase 項目,請點擊添加應用以顯示平台選項。
選擇您要註冊的 Unity 項目的構建目標,或者您甚至可以選擇現在同時註冊兩個目標。
輸入您的 Unity 項目的平台特定 ID。
對於 iOS - 在iOS 捆綁包 ID字段中輸入 Unity 項目的 iOS ID。
對於 Android - 在Android 包名稱字段中輸入您的 Unity 項目的 Android ID。
術語包名稱和應用程序 ID通常可以互換使用。
在 Unity IDE 中打開 Unity 項目,然後導航到每個平台的設置部分:
對於 iOS - 導航到構建設置 > iOS 。
對於 Android - 導航至Android > Player Settings > Other Settings 。
您的 Unity 項目的 ID 是Bundle Identifier值(例如 ID:
com.yourcompany.yourproject
)。(可選)輸入您的 Unity 項目的平台特定暱稱。
這些暱稱是內部的方便標識符,僅在 Firebase 控制台中對您可見。點擊註冊應用。
第 3 步:添加 Firebase 配置文件
在 Firebase 控制台設置工作流程中獲取特定於平台的 Firebase 配置文件。
對於 iOS — 單擊下載 GoogleService-Info.plist 。
對於 Android - 單擊下載 google-services.json 。
Firebase 配置文件包含項目的唯一但非秘密標識符。要了解有關此配置文件的更多信息,請訪問了解 Firebase 項目。
您可以隨時再次下載Firebase 配置文件。
確保配置文件名沒有附加其他字符,例如
(2)
。
打開 Unity 項目的Project窗口,然後將配置文件移動到
Assets
文件夾中。返回 Firebase 控制台,在設置工作流程中,單擊Next 。
第 4 步:添加 Firebase Unity SDK
在 Firebase 控制台中,點擊Download Firebase Unity SDK ,然後在方便的地方解壓 SDK。
您可以隨時重新下載Firebase Unity SDK 。
Firebase Unity SDK 不是特定於平台的。
在您打開的 Unity 項目中,導航到Assets > Import Package > Custom Package 。
從解壓縮的 SDK 中,選擇您想在應用中使用的受支持的 Firebase 產品。
啟用分析
- 為 Google Analytics 添加 Firebase 包:
FirebaseAnalytics.unitypackage
- 為您要在應用中使用的任何其他 Firebase 產品添加軟件包。例如,要使用 Firebase 身份驗證和 Firebase 實時數據庫:
FirebaseAuth.unitypackage
和FirebaseDatabase.unitypackage
未啟用分析
添加要在應用中使用的 Firebase 產品的軟件包。例如,要使用 Firebase 身份驗證和 Firebase 實時數據庫:
FirebaseAuth.unitypackage
和FirebaseDatabase.unitypackage
- 為 Google Analytics 添加 Firebase 包:
在“導入 Unity 包”窗口中,單擊“導入”。
返回 Firebase 控制台,在設置工作流程中,單擊Next 。
第 5 步:確認 Google Play 服務版本要求
適用於 Android 的 Firebase Unity SDK 需要Google Play 服務,該服務必須是最新的,才能使用 SDK。
在應用程序的開頭添加以下代碼。在調用 SDK 中的任何其他方法之前,您可以檢查並選擇將 Google Play 服務更新到 Firebase Unity SDK 所需的版本。
Firebase.FirebaseApp.CheckAndFixDependenciesAsync().ContinueWith(task => { var dependencyStatus = task.Result; if (dependencyStatus == Firebase.DependencyStatus.Available) { // Create and hold a reference to your FirebaseApp, // where app is a Firebase.FirebaseApp property of your application class. app = Firebase.FirebaseApp.DefaultInstance; // Set a flag here to indicate whether Firebase is ready to use by your app. } else { UnityEngine.Debug.LogError(System.String.Format( "Could not resolve all Firebase dependencies: {0}", dependencyStatus)); // Firebase Unity SDK is not safe to use here. } });
你都準備好了!您的 Unity 項目已註冊並配置為使用 Firebase。
但是,如果您在設置時遇到問題,請訪問Unity 故障排除和常見問題解答。
設置桌面工作流程(測試版)
當您創建遊戲時,通常先在 Unity 編輯器和桌面平台上測試您的遊戲,然後在開發後期在移動設備上進行部署和測試。為了支持這個工作流程,我們提供了Firebase Unity SDK 的一個子集,它可以在 Windows、macOS、Linux 和 Unity 編輯器中運行。
按照與移動平台相同的說明設置桌面平台 Unity 項目(從上面的向 Firebase 註冊您的應用步驟開始)。
在 Unity IDE 中運行您的 Unity 項目或選擇為桌面構建您的 Unity 項目。
(可選)在編輯模式下運行 Unity 項目。
Firebase Unity SDK 也可以在 Unity 的編輯模式下運行,允許在編輯器插件中使用。
創建編輯器使用的
FirebaseApp
時,請勿使用默認實例。相反,為
FirebaseApp.Create()
調用提供一個唯一的名稱。這對於避免 Unity IDE 使用的實例和 Unity 項目使用的實例之間的選項衝突很重要。
支持的 Firebase 產品
在參考文檔中了解有關 Unity Firebase 庫的更多信息。
Firebase Unity SDK 在iOS和Android上支持以下 Firebase 產品:
Firebase 產品 | 統一包 |
---|---|
AdMob | 在 AdMob Unity 插件中單獨分發 |
分析 | FirebaseAnalytics.unitypackage |
驗證 | FirebaseAuth.unitypackage |
雲防火牆 | FirebaseFirestore.unitypackage |
雲函數 | FirebaseFunctions.unitypackage |
雲消息傳遞 | FirebaseMessaging.unitypackage (推薦) FirebaseAnalytics.unitypackage |
雲儲存 | FirebaseStorage.unitypackage |
崩潰分析器 | FirebaseCrashlytics.unitypackage (推薦) FirebaseAnalytics.unitypackage |
動態鏈接 | FirebaseDynamicLinks.unitypackage (推薦) FirebaseAnalytics.unitypackage |
實時數據庫 | FirebaseDatabase.unitypackage |
遠程配置 | FirebaseRemoteConfig.unitypackage (推薦) FirebaseAnalytics.unitypackage |
支持的 Firebase 產品(桌面)
Firebase Unity SDK 包括對部分產品的桌面工作流支持,使 Firebase 的某些部分能夠在 Unity 編輯器和 Windows、macOS 和 Linux 上的獨立桌面構建中使用。
Firebase 產品(桌面) | 統一包 |
---|---|
驗證 | FirebaseAuth.unitypackage |
雲函數 | FirebaseFunctions.unitypackage |
雲防火牆 | FirebaseFirestore.unitypackage |
雲儲存 | FirebaseStorage.unitypackage |
實時數據庫 | FirebaseDatabase.unitypackage |
遠程配置 | FirebaseRemoteConfig.unitypackage |
Firebase 將剩餘的桌面庫作為存根(非功能性)實現提供,以便在為 Windows、macOS 和 Linux 構建時提供便利。因此,您不需要有條件地編譯代碼以針對桌面。
下一步
準備啟動您的應用程序:
- 在 Google Cloud Console 中為您的項目設置預算提醒。
- 監控 Firebase 控制台中的使用情況和計費信息中心,以全面了解您的項目在多個 Firebase 服務中的使用情況。
- 查看Firebase 啟動清單。
Firebase 和您的 Unity 項目遇到問題?訪問Unity 疑難解答和常見問題解答。