將 Firebase 添加到您的 Unity 項目

電力您統一場比賽我們的火力地堡統一的SDK。

要顯示它是多麼容易堵塞火力地堡到您的統一項目,我們做了一個樣本遊戲,MechaHamster,你可以從GitHub,App Store谷歌Play商店下載。

MechaHamster (GitHub)

MechaHamster (App Store)

機甲倉鼠(Play 商店)


了解我們與火力地堡您的遊戲了電源的更多信息,火力地堡遊戲頁面

已將 Firebase 添加到您的 Unity 項目中?請確保您正在使用最新版本的的火力地堡統一SDK

先決條件

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

  • (僅適用於iOS)安裝的情況如下:

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

    • 對於iOS -針對iOS的10或更高版本
    • 對於Android的-目標API級別19(奇巧)或更高版本

  • 設置物理設備或使用模擬器來運行您的應用程序。

    • 對於iOS -建立物理iOS設備或使用iOS模擬器。

    • 對於Android的-仿真器必須使用與谷歌玩模擬器圖像。

如果您還沒有一個統一的項目,只是想嘗試一個火力地堡的產品,你可以下載我們的一個入門示例

第1步:創建一個火力地堡項目

在將 Firebase 添加到您的 Unity 項目之前,您需要創建一個 Firebase 項目以連接到您的 Unity 項目。參觀了解火力地堡項目,詳細了解項目的火力地堡。

第2步:註冊與火力地堡您的應用程序

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

  1. 轉至火力地堡控制台

  2. 在項目概述頁面的中心,點擊圖標團結 )啟動安裝工作流程。

    如果您已經添加的應用程序到你的火力地堡項目,單擊添加應用程序,以顯示平台的選擇。

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

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

    • 對於iOS -在輸入您的統一項目的iOS ID的iOS捆綁ID字段。

    • 對於Android的-在輸入您的統一項目的Android ID Android包名稱字段。
      術語包名稱應用程序ID常常可互換地使用。

  5. (可選)輸入您的統一項目的特定於平台的綽號。
    這些暱稱是內部的便利標識符,只有您在 Firebase 控制台中才能看到。

  6. 點擊註冊應用

第3步:添加火力地堡配置文件

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

    • 對於iOS -點擊下載GoogleService-Info.plist中

    • 對於Android的-點擊下載Google-services.json。

  2. 打開團結項目的項目窗口,然後將你的配置文件(S)到Assets的文件夾。

  3. 早在火力地堡控制台,在設置工作流程,然後單擊下一步

第4步:添加火力地堡統一的SDK

  1. 在火力地堡控制台,點擊下載火力地堡統一SDK,然後解壓縮SDK方便的地方。

  2. 在打開的團結項目,導航到資產>導入包>自定義套餐

  3. 從解壓縮後的SDK,選擇支持的火力地堡產品要在您的應用程序使用。

    啟用分析

    • 添加火力地堡包谷歌分析: FirebaseAnalytics.unitypackage
    • 添加要在應用中使用的任何其他 Firebase 產品的軟件包。例如,要使用 Firebase 身份驗證和 Firebase 實時數據庫:
      FirebaseAuth.unitypackageFirebaseDatabase.unitypackage

    未啟用分析

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

  4. 導入統一包窗口,單擊導入

  5. 早在火力地堡控制台,在設置工作流程,然後單擊下一步

第5步:確認谷歌Play服務版本要求

在火力地堡統一SDK為Android要求谷歌播放服務,它必須跟上時代的可使用的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 編輯器和桌面平台上測試遊戲,然後在開發後期在移動設備上進行部署和測試,這通常要容易得多。為了支持這個流程,我們提供了火力地堡統一的SDK的子集,它可以在Windows,MacOS的,Linux和從內部統一編輯器中運行。

  1. 按照作為移動平台相同的指令建立一個桌面平台的統一項目(先從註冊您的應用程序與火力地堡步以上)。

  2. 運行在Unity IDE您的統一項目或選擇要建立桌面您的團結項目。

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

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

    1. 當你創建一個FirebaseApp使用的編輯器,不使用默認實例。

    2. 取而代之的是,提供一個唯一的名稱FirebaseApp.Create()調用。

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

支持的 Firebase 產品

了解更多關於在Unity火力地堡庫參考文檔

在火力地堡統一SDK支持iOSAndroid上以下火力地堡產品:

Firebase 產品統一包
廣告在 AdMob Unity 插件中單獨分發
分析FirebaseAnalytics.unitypackage
驗證FirebaseAuth.unitypackage
雲防火牆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 產品(桌面)

在火力地堡統一SDK包括桌面工作流支持,為產品的一個子集,使火力地堡的某些部分在Unity編輯器和獨立的桌面使用建立在Windows,MacOS和Linux操作系統。

Firebase 產品(桌面)統一包
驗證FirebaseAuth.unitypackage
雲功能FirebaseFunctions.unitypackage
雲防火牆FirebaseFirestore.unitypackage
雲儲存FirebaseStorage.unitypackage
實時數據庫FirebaseDatabase.unitypackage
遠程配置FirebaseRemoteConfig.unitypackage

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

下一步