Google 致力于为黑人社区推动种族平等。查看具体举措

將 Firebase 添加到您的 Unity 項目

使用我們的 Firebase Unity SDK 為您的Unity遊戲提供動力。

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

MechaHamster (GitHub)

MechaHamster (App Store)

MechaHamster (Play 商店)


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

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

先決條件

  • 安裝 Unity 2017.4 或更高版本。早期版本也可能兼容,但不會得到積極支持。

  • (僅限 iOS)安裝以下內容:

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

    • 對於 iOS — 以 iOS 10 或更高版本為目標
    • 對於 Android — 以 API 級別 16 (Jelly Bean) 或更高版本為目標
  • 設置物理設備或使用模擬器來運行您的應用程序。

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

    • 對於 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 項目的Project窗口,然後將您的配置文件移動到Assets文件夾中。

  3. 返回 Firebase 控制台,在設置工作流中,點擊Next

第 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 控制台,在設置工作流中,點擊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 的一個子集,這些 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 Unity SDK 在iOSAndroid上支持以下 Firebase 產品:

Firebase 產品統一包
廣告在 AdMob Unity 插件中單獨分發
分析FirebaseAnalytics.unitypackage
驗證FirebaseAuth.unitypackage
Cloud Firestore (測試版) FirebaseFirestore.unitypackage
雲功能FirebaseFunctions.unitypackage
雲消息FirebaseMessaging.unitypackage
(推薦) FirebaseAnalytics.unitypackage
雲儲存FirebaseStorage.unitypackage
Crashlytics 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 構建時提供便利。因此,您不需要有條件地編譯代碼來定位桌面。

下一步