了解 2023 年 Google I/O 大会上介绍的 Firebase 亮点。了解详情

將 Firebase 添加到您的 Unity 項目

使用我們的 Firebase Unity SDK 增強您的Unity遊戲。

為了展示將 Firebase 插入您的 Unity 項目有多麼容易,我們製作了一個示例遊戲 MechaHamster,您可以從GitHubApp StoreGoogle Play Store下載該遊戲。

機甲倉鼠 (GitHub)

機甲倉鼠 (App Store)

MechaHamster(Play 商店)


在我們的Firebase 遊戲頁面上找到有關使用 Firebase 為您的遊戲提供動力的更多信息。

已經將 Firebase 添加到您的 Unity 項目?確保您使用的是最新版本的Firebase Unity SDK

先決條件

  • 安裝 Unity 2019.1 或更高版本。早期版本也可能兼容,但不會得到積極支持。對 Unity 2019.1 的支持被視為已棄用,下一個主要版本後將不再提供積極支持。

  • (僅限 Apple 平台)安裝以下內容:

    • Xcode 13.3.1 或更高版本
    • CocoaPods 1.10.0 或更高版本
  • 確保您的 Unity 項目滿足以下要求:

    • 對於 iOS — 針對 iOS 11 或更高版本
    • 對於 tvOS - 針對 tvOS 12 或更高版本
    • 對於 Android——目標 API 級別 19 (KitKat) 或更高
  • 設置物理設備或使用模擬器來運行您的應用程序。

    • 對於 Apple 平台——設置物理設備或使用 iOS 或 tvOS 模擬器。

    • 對於 Android模擬器必須使用帶有 Google Play 的模擬器圖像。

如果您還沒有 Unity 項目並且只想試用 Firebase 產品,您可以下載我們的快速入門示例之一。

第 1 步:創建一個 Firebase 項目

在將 Firebase 添加到 Unity 項目之前,您需要創建一個 Firebase 項目以連接到您的 Unity 項目。訪問了解 Firebase 項目以了解有關 Firebase 項目的更多信息。

第 2 步:向 Firebase 註冊您的應用

您可以註冊一個或多個應用程序或遊戲來連接您的 Firebase 項目。

  1. 轉到Firebase 控制台

  2. 在項目概覽頁面的中央,單擊Unity圖標 ( ) 以啟動設置工作流程。

    如果您已將應用程序添加到 Firebase 項目,請單擊添加應用程序以顯示平台選項。

  3. 選擇您要註冊的 Unity 項目的構建目標,或者您甚至可以選擇現在同時註冊兩個目標。

  4. 輸入您的 Unity 項目的平台特定 ID。

    • 對於 iOS — 在iOS 包 ID字段中輸入您的 Unity 項目的 iOS ID。

    • 對於 Android — 在Android 包名稱字段中輸入您的 Unity 項目的 Android ID。
      術語包名稱應用程序 ID經常互換使用。

  5. (可選)輸入您的 Unity 項目的平台特定暱稱。
    這些暱稱是內部的、方便的標識符,並且僅在 Firebase 控制台中對您可見。

  6. 單擊註冊應用程序

第 3 步:添加 Firebase 配置文件

  1. 在 Firebase 控制台設置工作流程中獲取特定於平台的 Firebase 配置文件。

    • 對於 iOS — 單擊下載 GoogleService-Info.plist

    • 對於 Android — 單擊下載 google-services.json

  2. 打開 Unity 項目的項目窗口,然後將配置文件移動到Assets文件夾中。

  3. 返回 Firebase 控制台,在設置工作流程中,單擊下一步

第 4 步:添加 Firebase Unity SDK

  1. 在 Firebase 控制台中,點擊Download Firebase Unity SDK ,然後將 SDK 解壓縮到方便的位置。

    • 您可以隨時再次下載Firebase Unity SDK

    • Firebase Unity SDK 不特定於平台。

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

  3. 從解壓縮的 SDK 中,選擇您要在您的應用中使用的受支持的 Firebase 產品

    啟用分析

    • 為 Google Analytics 添加 Firebase 包: FirebaseAnalytics.unitypackage
    • 添加您要在您的應用中使用的任何其他 Firebase 產品的軟件包。例如,要使用 Firebase 身份驗證和 Firebase 實時數據庫:
      FirebaseAuth.unitypackageFirebaseDatabase.unitypackage

    未啟用分析

    添加您要在應用中使用的 Firebase 產品的軟件包。例如,要使用 Firebase 身份驗證和 Firebase 實時數據庫:
    FirebaseAuth.unitypackageFirebaseDatabase.unitypackage

  4. “導入 Unity 包”窗口中,單擊“導入”

  5. 返回 Firebase 控制台,在設置工作流程中,單擊下一步

第 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 編輯器中運行。

  1. 按照與移動平台相同的說明設置桌面平台 Unity 項目(從上面的向 Firebase 註冊您的應用程序步驟開始)。

  2. 在 Unity IDE 中運行您的 Unity 項目或選擇為桌面構建您的 Unity 項目。

  3. (可選)在編輯模式下運行您的 Unity 項目。

    Firebase Unity SDK 也可以在 Unity 的編輯模式下運行,允許在編輯器插件中使用。

    1. 當您創建編輯器使用的FirebaseApp時,請勿使用默認實例。

    2. 相反,為FirebaseApp.Create()調用提供一個唯一的名稱。

      這對於避免 Unity IDE 使用的實例與 Unity 項目使用的實例之間的選項衝突很重要。

支持的 Firebase 產品

參考文檔中了解有關 Unity Firebase 庫的更多信息。

適用於移動設備的可用 Firebase 庫

Firebase Unity SDK 在AppleAndroid上支持以下 Firebase 產品:

火力地堡產品統一包
AdMob在 AdMob Unity 插件中單獨分發
分析FirebaseAnalytics.unitypackage
應用檢查FirebaseAppCheck.unitypackage
驗證FirebaseAuth.unitypackage
雲端 Firestore 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 產品(桌面)統一包
應用檢查FirebaseAppCheck.unitypackage
驗證FirebaseAuth.unitypackage
雲端功能FirebaseFunctions.unitypackage
雲端 Firestore FirebaseFirestore.unitypackage
雲儲存FirebaseStorage.unitypackage
實時數據庫FirebaseDatabase.unitypackage
遠程配置FirebaseRemoteConfig.unitypackage

Firebase 將剩餘的桌面庫作為存根(非功能性)實現提供,以便在為 Windows、macOS 和 Linux 構建時提供便利。因此,您不需要有條件地編譯代碼以針對桌面。

下一步