Общие сведения о Firebase для Android

Разрабатывая свой Android-проект с использованием Firebase, вы можете столкнуться с незнакомыми или специфическими для Firebase концепциями. Эта страница поможет вам ответить на эти вопросы или найти ресурсы для получения дополнительной информации.

Если у вас есть вопросы по теме, не затронутой на этой странице, посетите одно из наших онлайн-сообществ . Мы также будем периодически обновлять эту страницу новыми темами, поэтому проверяйте, не добавили ли мы интересующую вас тему!

Плагин Firebase Assistant для Android Studio

Firebase Assistant — это плагин Android Studio, который регистрирует ваше Android-приложение в проекте Firebase и добавляет необходимые файлы конфигурации Firebase, плагины и зависимости в ваш Android-проект — и все это прямо из Android Studio!

Следуйте инструкциям на странице «Начало работы с Android» , чтобы использовать Firebase Assistant. Убедитесь, что вы используете последние версии Android Studio и Firebase Assistant (перейдите в меню «Файл» > «Проверить наличие обновлений »).

При выборе определённых продуктов Firebase для добавления в приложение Firebase Assistant автоматически объявляет необходимые зависимости в файле app/build.gradle . Обратите внимание: если вы хотите использовать Firebase Android BoM (рекомендуется) , обновите зависимости в файле Gradle вашего модуля (на уровне приложения) (обычно app/build.gradle ), чтобы импортировать платформу BoM . Вам также потребуется удалить версии из каждой строки зависимости библиотеки Firebase.

Кроме того, для использования некоторых продуктов Firebase необходимо включить API или предоставить ресурсы вне Android Studio. Инструкции для каждого продукта в Firebase Assistant описывают все необходимые дополнительные действия. Например, для использования Cloud Firestore необходимо настроить базу данных и правила в консоли Firebase .

Сервисы Google — плагин и конфигурационный файл

В рамках добавления Firebase в ваш проект Android вам необходимо добавить плагин google-services и файл конфигурации google-services.json в ваш проект.

Если вы добавляете Firebase в свой Android-проект через консоль Firebase , REST API управления или интерфейс командной строки Firebase , вам необходимо вручную добавить плагин и файл конфигурации в свой проект. Однако при использовании Firebase Assistant эти задачи выполняются автоматически во время настройки.

Посетите документацию Android , чтобы узнать, как работают вместе плагин и файл конфигурации служб Google.

Firebase Android BoM ( Bill of Materials )

Спецификация материалов ( Bill of Materials ) Firebase Android BoM позволяет управлять всеми версиями библиотеки Firebase, указав только одну версию — версию BoM .

При использовании Firebase BoM в приложении BoM автоматически подгружает отдельные версии библиотек, сопоставленные с версией BoM . Все отдельные версии библиотек будут совместимы. При обновлении версии BoM в приложении все используемые в приложении библиотеки Firebase обновятся до версий, сопоставленных с этой версией BoM .

Чтобы узнать, какие версии библиотеки Firebase соответствуют конкретной версии BoM , ознакомьтесь с примечаниями к выпуску для этой версии BoM . Если вам нужно сравнить версии библиотеки, соответствующие одной версии BoM , с другой версией BoM , воспользуйтесь виджетом сравнения ниже.

Узнайте больше о поддержке платформ BoM в Gradle .

Вот как использовать Firebase Android BoM для объявления зависимостей в Gradle-файле модуля (на уровне приложения) (обычно app/build.gradle ). При использовании BoM не нужно указывать отдельные версии библиотек в строках зависимостей.

dependencies {
  // Import the BoM for the Firebase platform
  implementation platform('com.google.firebase:firebase-bom:34.0.0')

  // Declare the dependencies for the desired Firebase products without specifying versions
  // For example, declare the dependencies for Firebase Authentication and Cloud Firestore
  implementation 'com.google.firebase:firebase-auth'
  implementation 'com.google.firebase:firebase-firestore'
}

Вот некоторые часто задаваемые вопросы об использовании Firebase Android BoM :

Сравнение версий Firebase BoM

Модули библиотеки расширений Kotlin (KTX)

Функциональные модули и доставка функций Play

Начиная с мая 2021 года ( Firebase BoM v28.0.0) пакеты Firebase Android SDK можно использовать в динамических модулях функций, которые устанавливаются отдельно от базового модуля приложения.

Чтобы включить поддержку модулей динамических функций, добавьте следующую зависимость в файл build.gradle вашего базового модуля:

dependencies {
  implementation 'com.google.firebase:firebase-dynamic-module-support:16.0.0-beta04'
}

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

Например, если ваше приложение использует Realtime Database для поддержки определённой функции реального времени, вы можете добавить зависимость firebase-database в файл build.gradle модуля функции, а не в базовый модуль. Это уменьшит размер загружаемого файла для большинства пользователей.

При использовании Firebase SDK в функциональных модулях следует учитывать следующие предостережения:

  • Такие продукты, как Dynamic Links или Firebase In-App Messaging , которые полагаются на событие Analytics first_open могут пропустить это событие при использовании в динамическом модуле функций.

  • При совместном использовании Cloud Firestore и Authentication всегда следует включать их в один и тот же модуль. Если это невозможно, убедитесь, что Authentication загружена до Cloud Firestore ; в противном случае некоторые операции Cloud Firestore могут иметь некорректное состояние аутентификации.

  • При использовании firebase-crashlytics-ndk в качестве зависимости динамического модуля функций вам необходимо установить свойство unstrippedNativeLibsDir в файле build.gradle вашего приложения, как описано в документации Crashlytics NDK .

Дополнительную информацию о функциональных модулях и доставке функций Play можно найти на странице Обзор доставки функций Play .

Плагин Gradle сервисов Google против сервисов Google Play против Google Play Store

Некоторые компоненты экосистем Google, Firebase и Android имеют схожие соглашения об именовании. Вот краткое объяснение каждого из них:

Плагин Gradle для сервисов Google
Плагин Gradle ( com.google.gms.google-services ), который запускается во время сборки, чтобы гарантировать, что ваше приложение имеет правильную конфигурацию для доступа к API Firebase и Google.
Несмотря на свое название, этот плагин не имеет никакого отношения к сервисам Google Play (см. следующую запись) и не влияет на возможности вашего приложения во время выполнения.
Этот плагин также обрабатывает файл google-services.json , который вы добавляете в приложение при настройке Firebase. Подробнее о плагине Gradle для сервисов Google
Сервисы Google Play
Невидимая фоновый сервис, работающий на устройстве Android и предоставляющий несколько распространенных API Google (например, Google Maps и Google Sign In) для приложений на устройстве.
Централизация этих общих API в едином сервисе уменьшает размер других приложений и позволяет устройству получать автоматические обновления безопасности и улучшения функций без обновления ОС. Узнайте больше о сервисах Google Play .
Google Play Маркет
Магазин для загрузки приложений, фильмов, книг и многого другого на устройства Android.
Как разработчик, вы управляете распространением, релизами и т. д. своего приложения через Google Play Console. Если на устройстве установлен Google Play Store, на нём также установлены сервисы Google Play (см. предыдущую запись). Узнайте больше о Google Play Store для разработчиков .
Сервисы Google Play Игр
Набор API для разработчиков мобильных игр
Узнайте больше о сервисах Google Play Games и о том, как интегрировать Firebase с вашим проектом сервисов Google Play Games .

Ресурсы с открытым исходным кодом для Firebase Android SDK

Firebase поддерживает разработку ПО с открытым исходным кодом, и мы приветствуем вклад и отзывы сообщества.

Firebase Android SDK

Большинство пакетов Firebase Android SDK разрабатываются как библиотеки с открытым исходным кодом в нашем публичном репозитории Firebase на GitHub . Мы активно работаем над тем, чтобы в ближайшее время перенести оставшиеся библиотеки Firebase, разработанные в частном порядке, на наш публичный GitHub!

Примеры быстрого старта

Firebase поддерживает коллекцию примеров быстрого старта для большинства API Firebase на Android. Эти примеры можно найти в нашем публичном репозитории быстрого старта Firebase на GitHub .

Вы можете открыть каждый краткий старт как проект Android Studio, а затем запустить его на мобильном устройстве или виртуальном устройстве (AVD). Или использовать эти краткие старты в качестве примеров кода для использования Firebase SDK.

Другие темы, представляющие интерес