Добавьте Firebase в свой проект Unity

Расширьте возможности своих игр Unity с помощью наших Firebase Unity SDK.

Чтобы показать, насколько просто подключить Firebase к вашему проекту Unity, мы создали пример игры MechaHamster. Если вы хотите попробовать добавить Firebase в игру, используйте начальную версию на GitHub . Если вам нужна полная версия, ознакомьтесь с версиями в App Store или Google Play Store .

MechaHamster (GitHub)

MechaHamster (App Store)

MechaHamster (Play Store)


Дополнительную информацию о том, как улучшить ваши игры с помощью Firebase, можно найти на нашей странице игр Firebase .

Уже добавили Firebase в свой проект Unity? Убедитесь, что вы используете последнюю версию Firebase Unity SDK .

Предпосылки

  • Установите Unity 2021 LTS или более позднюю версию. Поддержка Unity 2020 считается устаревшей и не будет активно поддерживаться после следующего основного релиза. Более ранние версии также могут быть совместимы, но не будут активно поддерживаться.

  • (Только для платформ Apple) Установите следующее:

    • Xcode 13.3.1 или выше
    • CocoaPods 1.12.0 или выше
  • Убедитесь, что ваш проект Unity соответствует следующим требованиям:

    • Для iOS — предназначено для iOS 13 и выше.
    • Для tvOS — предназначено для tvOS 13 и выше
    • Для Android — ориентирован на API уровня 21 (Lollipop) или выше
  • Настройте физическое устройство или используйте эмулятор для запуска вашего приложения.

    • Для платформ Apple — настройте физическое устройство или используйте симулятор iOS или tvOS.

    • Для Androidэмуляторы должны использовать образ эмулятора с Google Play.

Если у вас еще нет проекта Unity и вы просто хотите опробовать продукт Firebase, вы можете загрузить один из наших примеров быстрого старта .

Шаг 1 : Создание проекта Firebase

Прежде чем добавить Firebase в свой проект Unity, необходимо создать проект Firebase для подключения к нему. Подробнее о проектах Firebase можно узнать в разделе «Понимание проектов Firebase».

Шаг 2 : Зарегистрируйте свое приложение в Firebase

Вы можете зарегистрировать одно или несколько приложений или игр для подключения к вашему проекту Firebase.

  1. Перейдите в консоль Firebase .

  2. В центре страницы обзора проекта щелкните значок Unity ( ), чтобы запустить рабочий процесс настройки.

    Если вы уже добавили приложение в свой проект Firebase, нажмите «Добавить приложение» , чтобы отобразить параметры платформы.

  3. Выберите, какую цель сборки вашего проекта Unity вы хотите зарегистрировать, или вы даже можете зарегистрировать обе цели одновременно.

  4. Введите идентификатор(ы) платформы вашего проекта Unity.

    • Для iOS — введите идентификатор iOS вашего проекта Unity в поле идентификатора пакета iOS .

    • Для Android — введите идентификатор Android вашего проекта Unity в поле имени пакета Android .
      Термины «имя пакета» и «идентификатор приложения» часто используются как взаимозаменяемые.

  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 , которые вы хотите использовать в своем приложении.

    Analytics включена

    • Добавьте пакет Firebase для Google Analytics : FirebaseAnalytics.unitypackage
    • Добавьте пакеты для любых других продуктов Firebase, которые вы хотите использовать в своём приложении. Например, чтобы использовать Firebase Authentication и Firebase Realtime Database :
      FirebaseAuth.unitypackage и FirebaseDatabase.unitypackage

    Analytics не включена

    Добавьте пакеты для продуктов Firebase, которые вы хотите использовать в своём приложении. Например, чтобы использовать Firebase Authentication и Firebase Realtime Database :
    FirebaseAuth.unitypackage и FirebaseDatabase.unitypackage

  4. В окне Импорт пакета Unity нажмите Импорт .

  5. Вернитесь в консоль Firebase , в рабочем процессе настройки нажмите кнопку Далее .

Шаг 5 : Подтвердите требования к версии сервисов Google Play

Для некоторых продуктов в Firebase Unity SDK для Android требуются Google Play services . Узнайте , какие продукты имеют эту зависимость . Для использования этих продуктов Google Play services должны быть обновлены.

Добавьте следующий оператор using и код инициализации в начало приложения. Вы можете проверить наличие Google Play services и при необходимости обновить их до необходимой версии, прежде чем вызывать любые другие методы в SDK.

using Firebase.Extensions;
Firebase.FirebaseApp.CheckAndFixDependenciesAsync().ContinueWithOnMainThread(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 в среде Unity IDE или выберите сборку проекта Unity для настольного компьютера .

  3. (Необязательно) Запустите проект Unity в режиме редактирования.

    Firebase Unity SDK также можно запускать в режиме редактирования Unity, что позволяет использовать его в плагинах редактора.

    1. При создании FirebaseApp , используемого редактором, не используйте экземпляр по умолчанию.

    2. Вместо этого укажите уникальное имя для вызова FirebaseApp.Create() .

      Это важно для предотвращения конфликта параметров между экземпляром, используемым Unity IDE, и экземпляром, используемым вашим проектом Unity.

Поддерживаемые продукты Firebase

Подробнее о библиотеках Unity Firebase можно узнать в справочной документации .

Доступные библиотеки Firebase для мобильных устройств

Firebase Unity SDK поддерживает следующие продукты Firebase на Apple и Android :

Продукт Firebase Пакет Unity
AdMob Распространяется отдельно в плагине AdMob Unity.
Логика искусственного интеллекта Firebase FirebaseAI.unitypackage
Analytics FirebaseAnalytics.unitypackage
App Check FirebaseAppCheck.unitypackage
Authentication FirebaseAuth.unitypackage
Cloud Firestore FirebaseFirestore.unitypackage
Cloud Functions FirebaseFunctions.unitypackage
Cloud Messaging FirebaseMessaging.unitypackage
(рекомендуется) FirebaseAnalytics.unitypackage
Cloud Storage FirebaseStorage.unitypackage
Crashlytics FirebaseCrashlytics.unitypackage
(рекомендуется) FirebaseAnalytics.unitypackage
Dynamic Links FirebaseDynamicLinks.unitypackage
(рекомендуется) FirebaseAnalytics.unitypackage
Realtime Database FirebaseDatabase.unitypackage
Remote Config FirebaseRemoteConfig.unitypackage
(рекомендуется) FirebaseAnalytics.unitypackage

Доступные библиотеки Firebase для настольных компьютеров

Firebase Unity SDK включает поддержку рабочего процесса на рабочем столе для подмножества продуктов, что позволяет использовать определенные части Firebase в редакторе Unity и в отдельных сборках для рабочего стола в Windows, macOS и Linux.

Продукт Firebase (для настольных компьютеров) Пакет Unity
Логика искусственного интеллекта Firebase FirebaseAI.unitypackage
App Check FirebaseAppCheck.unitypackage
Authentication FirebaseAuth.unitypackage
Cloud Functions FirebaseFunctions.unitypackage
Cloud Firestore FirebaseFirestore.unitypackage
Cloud Storage FirebaseStorage.unitypackage
Realtime Database FirebaseDatabase.unitypackage
Remote Config FirebaseRemoteConfig.unitypackage

Firebase предоставляет оставшиеся десктопные библиотеки в виде заглушек (нефункциональных) для удобства сборки под Windows, macOS и Linux. Таким образом, вам не нужно выполнять условную компиляцию кода для десктопной версии.

Следующие шаги