Расширьте возможности своих игр Unity с помощью наших Firebase Unity SDK.
Чтобы показать, насколько легко подключить Firebase к вашему проекту Unity, мы создали пример игры MechaHamster. Если вы хотите попробовать добавить Firebase в игру, используйте начальную версию на GitHub . Если вам нужна завершенная версия, ознакомьтесь с версиями в App Store или Google Play Store .
MechaHamster (магазин приложений)
Дополнительную информацию о том, как улучшить свои игры с помощью 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.
Хотите ли вы использовать Cloud Messaging ?
Для Cloud Messaging на iOS или tvOS необходимы следующие предварительные условия:
- Настройте физическое устройство .
- Получите ключ аутентификации push-уведомлений Apple для своей учетной записи разработчика Apple .
- Включите Push-уведомления в XCode в разделе Приложение > Возможности .
Для Android — эмуляторы должны использовать образ эмулятора с Google Play.
- Войдите в Firebase, используя свой аккаунт Google.
Если у вас еще нет проекта Unity и вы просто хотите опробовать продукт Firebase, вы можете загрузить один из наших примеров быстрого старта .
Шаг 1 : Создание проекта Firebase
Прежде чем вы сможете добавить Firebase в свой проект Unity, вам нужно создать проект Firebase для подключения к вашему проекту Unity. Посетите Understand Firebase Projects , чтобы узнать больше о проектах Firebase.
Создать проект Firebase
В консоли Firebase нажмите Добавить проект .
Чтобы добавить ресурсы Firebase в существующий проект Google Cloud , введите имя проекта или выберите его из раскрывающегося меню.
Чтобы создать новый проект, введите имя проекта. Вы также можете изменить идентификатор проекта, отображаемый под именем проекта.
При появлении соответствующего запроса ознакомьтесь с условиями Firebase и примите их.
Нажмите «Продолжить» .
(Необязательно) Настройте Google Analytics для своего проекта, что обеспечит оптимальную работу с использованием следующих продуктов Firebase: Firebase A/B Testing , Cloud Messaging , Crashlytics , In-App Messaging и Remote Config (включая Personalization ).
Либо выберите существующую учетную запись Google Analytics , либо создайте новую учетную запись. Если вы создаете новую учетную запись, выберите местоположение отчетов Analytics , затем примите настройки совместного использования данных и условия Google Analytics для вашего проекта.
Нажмите «Создать проект» (или «Добавить Firebase» , если вы добавляете Firebase в существующий проект Google Cloud ).
Firebase автоматически предоставляет ресурсы для вашего проекта Firebase. После завершения процесса вы будете перенаправлены на страницу обзора вашего проекта Firebase в консоли Firebase .
Шаг 2 : Зарегистрируйте свое приложение в Firebase
Вы можете зарегистрировать одно или несколько приложений или игр для подключения к вашему проекту Firebase.
Перейдите в консоль Firebase .
В центре страницы обзора проекта щелкните значок Unity (
), чтобы запустить рабочий процесс настройки.Если вы уже добавили приложение в свой проект Firebase, нажмите «Добавить приложение» , чтобы отобразить параметры платформы.
Выберите, какую цель сборки вашего проекта Unity вы хотите зарегистрировать, или вы даже можете зарегистрировать обе цели одновременно.
Введите идентификатор(ы) платформы вашего проекта Unity.
Для iOS — введите идентификатор iOS вашего проекта Unity в поле идентификатора пакета iOS .
Для Android — введите идентификатор Android вашего проекта Unity в поле имени пакета Android .
Термины «имя пакета» и «идентификатор приложения» часто используются как взаимозаменяемые.
Где найти идентификатор вашего проекта Unity?
Откройте проект Unity в Unity IDE, затем перейдите в раздел настроек для каждой платформы:
Для iOS — перейдите в Настройки сборки > iOS .
Для Android — перейдите в Android > Настройки проигрывателя > Другие настройки .
Идентификатор вашего проекта Unity — это значение идентификатора пакета (пример идентификатора:
com.yourcompany.yourproject
).(Необязательно) Введите псевдонимы вашего проекта Unity, специфичные для платформы.
Эти псевдонимы являются внутренними, удобными идентификаторами и видны только вам в консоли Firebase .Нажмите «Зарегистрировать приложение» .
Шаг 3 : Добавьте файлы конфигурации Firebase
Получите файлы конфигурации Firebase для вашей платформы в рабочем процессе настройки консоли Firebase .
Для iOS — нажмите «Загрузить GoogleService-Info.plist» .
Для Android — нажмите «Загрузить google-services.json» .
Что вам нужно знать об этом файле конфигурации?
Файл конфигурации Firebase содержит уникальные, но не секретные идентификаторы для вашего проекта и приложения. Чтобы узнать больше об этом файле конфигурации, посетите Understand Firebase Projects .
Вы можете повторно загрузить файл конфигурации Firebase в любое время.
Убедитесь, что имя файла конфигурации не дополнено дополнительными символами, например
(2)
.
Откройте окно проекта Unity, затем переместите файлы конфигурации в папку
Assets
.Вернувшись в консоль Firebase , в рабочем процессе настройки нажмите кнопку Далее .
Шаг 4 : Добавьте Firebase Unity SDK
В консоли Firebase нажмите «Загрузить Firebase Unity SDK» , затем распакуйте SDK в удобное место.
Вы можете снова загрузить Firebase Unity SDK в любое время.
Firebase Unity SDK не привязан к какой-либо платформе.
В открытом проекте Unity перейдите в раздел Assets > Import Package > Custom Package .
В распакованном SDK выберите поддерживаемые продукты Firebase , которые вы хотите использовать в своем приложении.
- Добавьте пакет Firebase для Google Analytics :
FirebaseAnalytics.unitypackage
- Добавьте пакеты для любых других продуктов Firebase, которые вы хотите использовать в своем приложении. Например, чтобы использовать Firebase Authentication и Firebase Realtime Database :
FirebaseAuth.unitypackage
иFirebaseDatabase.unitypackage
Добавьте пакеты для продуктов Firebase, которые вы хотите использовать в своем приложении. Например, чтобы использовать Firebase Authentication и Firebase Realtime Database :
FirebaseAuth.unitypackage
иFirebaseDatabase.unitypackage
- Добавьте пакет Firebase для Google Analytics :
В окне «Импорт пакета Unity» нажмите «Импорт» .
Вернувшись в консоль 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.
Настройте проект Unity для настольной платформы, следуя тем же инструкциям, что и для мобильной платформы (начните с шага «Регистрация приложения в Firebase» выше).
Запустите свой проект Unity в среде разработки Unity или выберите сборку проекта Unity для настольного компьютера .
(Необязательно) Запустите проект Unity в режиме редактирования.
Firebase Unity SDK также можно запустить в режиме редактирования Unity, что позволяет использовать его в плагинах редактора.
При создании
FirebaseApp
, используемого редактором, не используйте экземпляр по умолчанию.Вместо этого укажите уникальное имя для вызова
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. Таким образом, вам не нужно условно компилировать код для нацеливания на рабочий стол.
Следующие шаги
Изучите примеры приложений Firebase .
Подготовьтесь к запуску вашего приложения:
- Настройте оповещения о бюджете для вашего проекта в консоли Google Cloud .
- Отслеживайте панель управления использованием и выставлением счетов в консоли Firebase , чтобы получить общую картину использования вашего проекта в различных службах Firebase.
- Ознакомьтесь с контрольным списком запуска Firebase .
Возникли проблемы с Firebase и вашим проектом Unity? Посетите раздел Unity troubleshooting & FAQ .