Save the date - Google I/O returns May 18-20. Register to get the most out of the digital experience: Build your schedule, reserve space, participate in Q&As, earn Google Developer profile badges, and more. Register now
本頁面由 Cloud Translation API 翻譯而成。
Switch to English

將Firebase添加到您的Unity項目

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

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

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項目的“項目”窗口,然後將配置文件移到Assets文件夾中。

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

步驟4 :添加Firebase Unity SDK

  1. 在Firebase控制台中,單擊“下載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 Unity SDK在iOSAndroid上支持以下Firebase產品:

火力地堡產品Unity包
AdMob在AdMob Unity插件中單獨分發
分析工具FirebaseAnalytics.unitypackage
驗證FirebaseAuth.unitypackage
Cloud 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產品(台式機) Unity包
驗證FirebaseAuth.unitypackage
雲功能FirebaseFunctions.unitypackage
雲消防站FirebaseFirestore.unitypackage
雲儲存FirebaseStorage.unitypackage
實時數據庫FirebaseDatabase.unitypackage
遠程配置FirebaseRemoteConfig.unitypackage

為了在構建Windows,macOS和Linux時方便起見,Firebase提供了剩餘的桌面庫作為存根(非功能性)實現。因此,您無需有條件地編譯代碼即可將桌面作為目標。

下一步