Предварительные условия
Установите или обновите Android Studio до последней версии.
Убедитесь, что ваш проект соответствует этим требованиям:
- Целевой уровень API 19 (KitKat) или выше.
- Использует Android 4.4 или выше.
- Использует Jetpack (AndroidX) , что включает соответствие следующим требованиям к версии:
-
com.android.tools.build:gradle
v3.2.1 или новее -
compileSdkVersion
28 или новее
-
Настройте физическое устройство или используйте эмулятор для запуска приложения.
Обратите внимание, что для Firebase SDK, зависящих от сервисов Google Play, на устройстве или эмуляторе должны быть установлены сервисы Google Play.Войдите в Firebase , используя свою учетную запись Google.
Если у вас еще нет проекта Android и вы просто хотите опробовать продукт Firebase, вы можете загрузить один из наших примеров быстрого запуска .
Вы можете подключить свое Android-приложение к Firebase, используя один из следующих вариантов:
- Вариант 1 : (рекомендуется) Используйте рабочий процесс настройки консоли Firebase.
- Вариант 2. Используйте Android Studio Firebase Assistant (может потребоваться дополнительная настройка).
Вариант 1. Добавьте Firebase с помощью консоли Firebase.
Добавление Firebase в ваше приложение включает в себя выполнение задач как в консоли Firebase , так и в открытом проекте Android (например, вы загружаете файлы конфигурации Firebase из консоли, а затем перемещаете их в свой проект Android).
Шаг 1. Создайте проект Firebase.
Прежде чем вы сможете добавить Firebase в свое приложение Android, вам необходимо создать проект Firebase для подключения к вашему приложению Android. Посетите раздел «Понимание проектов Firebase» , чтобы узнать больше о проектах Firebase.
Шаг 2. Зарегистрируйте свое приложение в Firebase.
Чтобы использовать Firebase в своем приложении для Android, вам необходимо зарегистрировать свое приложение в проекте Firebase. Регистрация вашего приложения часто называется «добавлением» вашего приложения в проект.
Перейдите в консоль Firebase .
В центре страницы обзора проекта щелкните значок Android (
) или «Добавить приложение» , чтобы запустить рабочий процесс установки.Введите имя пакета вашего приложения в поле имени пакета Android .
Имя пакета уникально идентифицирует ваше приложение на устройстве и в Google Play Store.
Имя пакета часто называют идентификатором приложения .
Найдите имя пакета вашего приложения в файле Gradle вашего модуля (на уровне приложения), обычно
app/build.gradle
(пример имени пакета:com.yourcompany.yourproject
).Имейте в виду, что значение имени пакета чувствительно к регистру, и его нельзя изменить для этого приложения Firebase Android после его регистрации в вашем проекте Firebase.
(Необязательно) Введите другую информацию о приложении: псевдоним приложения и сертификат подписи отладки SHA-1 .
Псевдоним приложения : внутренний удобный идентификатор, который виден только вам в консоли Firebase.
Сертификат подписи отладки SHA-1 : хеш SHA-1 требуется для аутентификации Firebase (при использовании входа в Google или входа по номеру телефона ) и динамических ссылок Firebase .
Нажмите Зарегистрировать приложение .
Шаг 3. Добавьте файл конфигурации Firebase.
Загрузите и добавьте файл конфигурации Firebase Android (
) в свое приложение:google-services.json Нажмите «Загрузить google-services.json» , чтобы получить файл конфигурации Firebase Android.
Переместите файл конфигурации в корневой каталог модуля (на уровне приложения) вашего приложения.
Файл конфигурации Firebase содержит уникальные, но несекретные идентификаторы вашего проекта. Чтобы узнать больше об этом файле конфигурации, посетите раздел «Понимание проектов Firebase» .
Вы можете снова загрузить файл конфигурации Firebase в любое время.
Убедитесь, что к имени файла конфигурации не добавлены дополнительные символы, например
(2)
.
Чтобы сделать значения в вашем файле конфигурации
доступными для Firebase SDK, вам понадобится плагин Gradle сервисов Google (google-services.json google-services
).В файле Gradle корневого уровня (уровня проекта) (
<project>/build.gradle.kts
или<project>/build.gradle
) добавьте плагин служб Google в качестве зависимости:Kotlin
plugins { id("com.android.application") version "7.2.0" apply false // ... // Add the dependency for the Google services Gradle plugin id("com.google.gms.google-services") version "4.3.15" apply false }
Groovy
plugins { id 'com.android.application' version '7.2.0' apply false // ... // Add the dependency for the Google services Gradle plugin id 'com.google.gms.google-services' version '4.3.15' apply false }
В файле Gradle вашего модуля (на уровне приложения) (обычно
<project>/<app-module>/build.gradle.kts
или<project>/<app-module>/build.gradle
) добавьте плагин сервисов Google:Kotlin
plugins { id("com.android.application") // Add the Google services Gradle plugin id("com.google.gms.google-services") // ... }
Groovy
plugins { id 'com.android.application' // Add the Google services Gradle plugin id 'com.google.gms.google-services' // ... }
Шаг 4. Добавьте Firebase SDK в свое приложение.
В файле Gradle вашего модуля (на уровне приложения) (обычно
<project>/build.gradle.kts
или<project>/build.gradle
) добавьте зависимости для продуктов Firebase , которые вы хотите использовать в своем приложении. Мы рекомендуем использовать Firebase Android BoM для управления версиями библиотеки.Аналитика включена
Kotlin+KTX
dependencies { // ... // Import the Firebase BoM implementation(platform("com.google.firebase:firebase-bom:32.3.1")) // When using the BoM, you don't specify versions in Firebase library dependencies // Add the dependency for the Firebase SDK for Google Analytics implementation("com.google.firebase:firebase-analytics-ktx") // TODO: Add the dependencies for any other Firebase products you want to use // See https://firebase.google.com/docs/android/setup#available-libraries // For example, add the dependencies for Firebase Authentication and Cloud Firestore implementation("com.google.firebase:firebase-auth-ktx") implementation("com.google.firebase:firebase-firestore-ktx") }
Java
dependencies { // ... // Import the Firebase BoM implementation(platform("com.google.firebase:firebase-bom:32.3.1")) // When using the BoM, you don't specify versions in Firebase library dependencies // Add the dependency for the Firebase SDK for Google Analytics implementation("com.google.firebase:firebase-analytics") // TODO: Add the dependencies for any other Firebase products you want to use // See https://firebase.google.com/docs/android/setup#available-libraries // For example, add the dependencies for Firebase Authentication and Cloud Firestore implementation("com.google.firebase:firebase-auth") implementation("com.google.firebase:firebase-firestore") }
Используя Firebase Android BoM , ваше приложение всегда будет использовать совместимые версии библиотек Firebase Android.
Аналитика не включена
Kotlin+KTX
dependencies { // ... // Import the Firebase BoM implementation(platform("com.google.firebase:firebase-bom:32.3.1")) // When using the BoM, you don't specify versions in Firebase library dependencies // TODO: Add the dependencies for Firebase products you want to use // See https://firebase.google.com/docs/android/setup#available-libraries // For example, add the dependencies for Firebase Authentication and Cloud Firestore implementation("com.google.firebase:firebase-auth-ktx") implementation("com.google.firebase:firebase-firestore-ktx") }
Java
dependencies { // ... // Import the Firebase BoM implementation(platform("com.google.firebase:firebase-bom:32.3.1")) // When using the BoM, you don't specify versions in Firebase library dependencies // TODO: Add the dependencies for Firebase products you want to use // See https://firebase.google.com/docs/android/setup#available-libraries // For example, add the dependencies for Firebase Authentication and Cloud Firestore implementation("com.google.firebase:firebase-auth") implementation("com.google.firebase:firebase-firestore") }
Используя Firebase Android BoM , ваше приложение всегда будет использовать совместимые версии библиотек Firebase Android.
После добавления зависимостей для продуктов, которые вы хотите использовать, синхронизируйте проект Android с файлами Gradle.
Сборки Gradle, использующие плагин Android Gradle (AGP) v4.2 или более ранней версии, должны включить поддержку Java 8. В противном случае при добавлении Firebase SDK в этих проектах Android произойдет сбой сборки.
Чтобы исправить этот сбой сборки, вы можете воспользоваться одним из двух вариантов:
- Добавьте перечисленные
compileOptions
из сообщения об ошибке в файлbuild.gradle.kts
илиbuild.gradle
уровня приложения . - Увеличьте
minSdk
для вашего проекта Android до 26 или выше.
Узнайте больше об этом сбое сборки в этом FAQ .
- Добавьте перечисленные
Вот и все! Вы можете пропустить следующий шаг и ознакомиться с рекомендуемыми дальнейшими шагами .
Если у вас возникли проблемы с настройкой, посетите раздел «Устранение неполадок и часто задаваемые вопросы Android» .
Вариант 2. Добавьте Firebase с помощью Firebase Assistant.
Помощник Firebase регистрирует ваше приложение в проекте Firebase и добавляет необходимые файлы, плагины и зависимости Firebase в ваш проект Android — и все это из Android Studio!
Откройте свой проект Android в Android Studio, затем убедитесь, что вы используете последние версии Android Studio и Firebase Assistant:
- Windows/Linux: Справка > Проверить наличие обновлений.
- macOS: Android Studio > Проверить наличие обновлений
Откройте Помощник Firebase: Инструменты > Firebase .
На панели «Ассистент» выберите продукт Firebase, который хотите добавить в свое приложение. Разверните его раздел, затем нажмите ссылку руководства (например,
«Аналитика» > «Записать событие Analytics» ).Нажмите «Подключиться к Firebase» , чтобы подключить проект Android к Firebase.
Этот рабочий процесс автоматически создает новое приложение Firebase для Android, используя имя пакета вашего приложения. Вы можете создать это новое приложение Firebase для Android либо в существующем проекте Firebase, либо в новом проекте.
Вот несколько советов по настройке проекта Firebase:
Ознакомьтесь с нашими рекомендациями по добавлению приложений в проект Firebase, в том числе о том, как обрабатывать несколько вариантов.
Если вы создаете новый проект, мы настоятельно рекомендуем вам настроить Google Analytics для вашего проекта, что позволит вам оптимально использовать многие продукты Firebase.
Этот рабочий процесс также добавляет файл конфигурации Android вашего проекта Firebase (
) в каталог модуля (уровня приложения) вашего приложения.google-services.json
Нажмите кнопку, чтобы добавить нужный продукт Firebase (например,
«Добавить аналитику в ваше приложение »).
Синхронизируйте приложение, чтобы убедиться, что все зависимости имеют необходимые версии.
На панели «Ассистент» следуйте остальным инструкциям по настройке для выбранного вами продукта Firebase.
Добавьте столько других продуктов Firebase, сколько захотите, с помощью Firebase Assistant!
Вот и все! Обязательно ознакомьтесь с рекомендуемыми дальнейшими действиями .
Если у вас возникли проблемы с настройкой, посетите раздел «Устранение неполадок и часто задаваемые вопросы Android» .
Доступные библиотеки
В этом разделе перечислены продукты Firebase, поддерживаемые для Android, и их зависимости Gradle. Узнайте больше об этих библиотеках Firebase для Android:
Справочная документация ( Kotlin+KTX | Java )
Обратите внимание: при использовании Firebase Android BoM вы не указываете отдельные версии библиотеки при объявлении зависимостей библиотеки Firebase в файле конфигурации сборки Gradle.
Kotlin+KTX
Услуга или продукт | Зависимость Gradle | Последний версия | Добавить аналитику? | ||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Firebase Android BoM (Спецификация материалов) | com.google.firebase:firebase-bom Последняя версия Firebase BoM содержит последние версии каждой библиотеки Firebase Android. Чтобы узнать, какие версии библиотек сопоставлены с конкретной версией спецификации, просмотрите примечания к выпуску для этой версии спецификации. | 32.3.1 | |||||||||||||||||||||||||||||||||||||||||||||
Реклама в приложении | com.google.android.gms:play-services-ads | 22.4.0 | |||||||||||||||||||||||||||||||||||||||||||||
Аналитика | com.google.firebase:firebase-analytics-ktx | 21.3.0 | |||||||||||||||||||||||||||||||||||||||||||||
Пользовательский поставщик проверки приложений | com.google.firebase:firebase-appcheck-ktx | 17.0.1 | |||||||||||||||||||||||||||||||||||||||||||||
Поставщик отладки проверки приложений | com.google.firebase:firebase-appcheck-debug | 17.0.1 | |||||||||||||||||||||||||||||||||||||||||||||
Проверка приложения Поставщик целостности Play | com.google.firebase:firebase-appcheck-playintegrity | 17.0.1 | |||||||||||||||||||||||||||||||||||||||||||||
Распространение приложений | com.google.firebase:firebase-appdistribution | 16.0.0-бета10 | |||||||||||||||||||||||||||||||||||||||||||||
API распространения приложений | com.google.firebase:firebase-appdistribution-api-ktx | 16.0.0-бета10 | |||||||||||||||||||||||||||||||||||||||||||||
Плагин распространения приложений | com.google.firebase:firebase-appdistribution-gradle | 4.0.0 | |||||||||||||||||||||||||||||||||||||||||||||
Аутентификация | com.google.firebase:firebase-auth-ktx | 22.1.2 | |||||||||||||||||||||||||||||||||||||||||||||
Облачный пожарный магазин | com.google.firebase:firebase-firestore-ktx | 24.8.1 | |||||||||||||||||||||||||||||||||||||||||||||
Облачные функции для клиентского SDK Firebase | com.google.firebase:firebase-functions-ktx | 20.3.1 | |||||||||||||||||||||||||||||||||||||||||||||
Облачный обмен сообщениями | com.google.firebase:firebase-messaging-ktx | 23.2.1 | |||||||||||||||||||||||||||||||||||||||||||||
Облачное хранилище | com.google.firebase:firebase-storage-ktx | 20.2.1 | |||||||||||||||||||||||||||||||||||||||||||||
Крашлитикс | com.google.firebase:firebase-crashlytics-ktx | 18.4.3 | |||||||||||||||||||||||||||||||||||||||||||||
Крашлитикс НДК | com.google.firebase:firebase-crashlytics-ndk | 18.4.3 | |||||||||||||||||||||||||||||||||||||||||||||
Плагин Crashlytics | com.google.firebase:firebase-crashlytics-gradle | 2.9.9 | |||||||||||||||||||||||||||||||||||||||||||||
Поддержка динамических функциональных модулей | com.google.firebase:firebase-динамический-модуль-поддержка | 16.0.0-бета03 | |||||||||||||||||||||||||||||||||||||||||||||
Динамические ссылки | com.google.firebase:firebase-dynamic-links-ktx | 21.1.0 | |||||||||||||||||||||||||||||||||||||||||||||
Обмен сообщениями в приложении | com.google.firebase:firebase-inappmessaging-ktx | 20.3.5 | (необходимый) | ||||||||||||||||||||||||||||||||||||||||||||
Отображение сообщений в приложении | com.google.firebase:firebase-inappmessaging-display-ktx | 20.3.5 | (необходимый) | ||||||||||||||||||||||||||||||||||||||||||||
Установки Firebase | com.google.firebase:firebase-installations-ktx | 17.1.4 | |||||||||||||||||||||||||||||||||||||||||||||
API загрузки моделей Firebase ML | com.google.firebase:firebase-ml-modeldownloader-ktx | 24.1.3 | |||||||||||||||||||||||||||||||||||||||||||||
Мониторинг производительности | com.google.firebase:firebase-perf-ktx | 20.4.1 | |||||||||||||||||||||||||||||||||||||||||||||
Плагин мониторинга производительности | com.google.firebase:perf-плагин | 1.4.2 | |||||||||||||||||||||||||||||||||||||||||||||
База данных реального времени | com.google.firebase:firebase-database-ktx | 20.2.2 | |||||||||||||||||||||||||||||||||||||||||||||
Удаленная настройка | com.google.firebase:firebase-config-ktx | 21.4.1 | |||||||||||||||||||||||||||||||||||||||||||||
Плагин сервисов Google Play | com.google.gms:google-services | 4.3.15 | |||||||||||||||||||||||||||||||||||||||||||||
Устаревшие библиотеки | |||||||||||||||||||||||||||||||||||||||||||||||
Проверка приложения Поставщик SafetyNet | com.google.firebase:firebase-appcheck-safetynet | 16.1.2 | |||||||||||||||||||||||||||||||||||||||||||||
Индексирование приложений | com.google.firebase:firebase-appindexing | 20.0.0 | |||||||||||||||||||||||||||||||||||||||||||||
Библиотеки Firebase ML Kit
|
Java
Услуга или продукт | Зависимость Gradle | Последний версия | Добавить аналитику? | ||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Firebase Android BoM (Спецификация материалов) | com.google.firebase:firebase-bom Последняя версия Firebase BoM содержит последние версии каждой библиотеки Firebase Android. Чтобы узнать, какие версии библиотек сопоставлены с конкретной версией спецификации, просмотрите примечания к выпуску для этой версии спецификации. | 32.3.1 | |||||||||||||||||||||||||||||||||||||||||||||
Реклама в приложении | com.google.android.gms:play-services-ads | 22.4.0 | |||||||||||||||||||||||||||||||||||||||||||||
Аналитика | com.google.firebase:firebase-analytics | 21.3.0 | |||||||||||||||||||||||||||||||||||||||||||||
Пользовательский поставщик проверки приложений | com.google.firebase:firebase-appcheck | 17.0.1 | |||||||||||||||||||||||||||||||||||||||||||||
Поставщик отладки проверки приложений | com.google.firebase:firebase-appcheck-debug | 17.0.1 | |||||||||||||||||||||||||||||||||||||||||||||
Проверка приложения Поставщик целостности Play | com.google.firebase:firebase-appcheck-playintegrity | 17.0.1 | |||||||||||||||||||||||||||||||||||||||||||||
Распространение приложений | com.google.firebase:firebase-appdistribution | 16.0.0-бета10 | |||||||||||||||||||||||||||||||||||||||||||||
API распространения приложений | com.google.firebase:firebase-appdistribution-api | 16.0.0-бета10 | |||||||||||||||||||||||||||||||||||||||||||||
Плагин распространения приложений | com.google.firebase:firebase-appdistribution-gradle | 4.0.0 | |||||||||||||||||||||||||||||||||||||||||||||
Аутентификация | com.google.firebase:firebase-аутентификация | 22.1.2 | |||||||||||||||||||||||||||||||||||||||||||||
Облачный пожарный магазин | com.google.firebase:firebase-firestore | 24.8.1 | |||||||||||||||||||||||||||||||||||||||||||||
Облачные функции для клиентского SDK Firebase | com.google.firebase:firebase-функции | 20.3.1 | |||||||||||||||||||||||||||||||||||||||||||||
Облачный обмен сообщениями | com.google.firebase:firebase-messaging | 23.2.1 | |||||||||||||||||||||||||||||||||||||||||||||
Облачное хранилище | com.google.firebase:firebase-хранилище | 20.2.1 | |||||||||||||||||||||||||||||||||||||||||||||
Крашлитикс | com.google.firebase:firebase-crashlytics | 18.4.3 | |||||||||||||||||||||||||||||||||||||||||||||
Крашлитикс НДК | com.google.firebase:firebase-crashlytics-ndk | 18.4.3 | |||||||||||||||||||||||||||||||||||||||||||||
Плагин Crashlytics | com.google.firebase:firebase-crashlytics-gradle | 2.9.9 | |||||||||||||||||||||||||||||||||||||||||||||
Поддержка динамических функциональных модулей | com.google.firebase:firebase-динамический-модуль-поддержка | 16.0.0-бета03 | |||||||||||||||||||||||||||||||||||||||||||||
Динамические ссылки | com.google.firebase:firebase-dynamic-links | 21.1.0 | |||||||||||||||||||||||||||||||||||||||||||||
Обмен сообщениями в приложении | com.google.firebase:firebase-inappmessaging | 20.3.5 | (необходимый) | ||||||||||||||||||||||||||||||||||||||||||||
Отображение сообщений в приложении | com.google.firebase:firebase-inappmessaging-display | 20.3.5 | (необходимый) | ||||||||||||||||||||||||||||||||||||||||||||
Установки Firebase | com.google.firebase:firebase-установки | 17.1.4 | |||||||||||||||||||||||||||||||||||||||||||||
API загрузки моделей Firebase ML | com.google.firebase:firebase-ml-modeldownloader | 24.1.3 | |||||||||||||||||||||||||||||||||||||||||||||
Мониторинг производительности | com.google.firebase:firebase-perf | 20.4.1 | |||||||||||||||||||||||||||||||||||||||||||||
Плагин мониторинга производительности | com.google.firebase:perf-плагин | 1.4.2 | |||||||||||||||||||||||||||||||||||||||||||||
База данных реального времени | com.google.firebase:firebase-база данных | 20.2.2 | |||||||||||||||||||||||||||||||||||||||||||||
Удаленная настройка | com.google.firebase:firebase-config | 21.4.1 | |||||||||||||||||||||||||||||||||||||||||||||
Плагин сервисов Google Play | com.google.gms:google-services | 4.3.15 | |||||||||||||||||||||||||||||||||||||||||||||
Устаревшие библиотеки | |||||||||||||||||||||||||||||||||||||||||||||||
Проверка приложения Поставщик SafetyNet | com.google.firebase:firebase-appcheck-safetynet | 16.1.2 | |||||||||||||||||||||||||||||||||||||||||||||
Индексирование приложений | com.google.firebase:firebase-appindexing | 20.0.0 | |||||||||||||||||||||||||||||||||||||||||||||
Библиотеки Firebase ML Kit
|
Следующие шаги
Добавьте сервисы Firebase в свое приложение:
Получите представление о поведении пользователей с помощью Analytics .
Настройте поток аутентификации пользователя с помощью Authentication .
Храните данные, например информацию о пользователях, с помощью Cloud Firestore или базы данных реального времени .
Храните файлы, например фотографии и видео, с помощью Cloud Storage .
Запускайте внутренний код триггера, который работает в безопасной среде с помощью Cloud Functions .
Отправляйте уведомления с помощью Cloud Messaging .
Узнайте, когда и почему ваше приложение выходит из строя, с помощью Crashlytics .
Узнайте больше о Firebase:
Посетите раздел «Понимание проектов Firebase» , чтобы узнать больше о проектах Firebase и лучших практиках для проектов.
Посетите раздел «Узнайте больше об Android и Firebase», если у вас есть вопросы о концепциях, которые незнакомы или специфичны для разработки Firebase и Android.
Ознакомьтесь с примерами приложений Firebase .
Получите практический опыт работы с Firebase Android Codelab .
Узнайте больше с помощью курса Firebase на выходных .
Подготовьтесь к запуску приложения:
- Настройте оповещения о бюджете для своего проекта в Google Cloud Console.
- Отслеживайте панель «Использование и выставление счетов» в консоли Firebase, чтобы получить общую картину использования вашего проекта в нескольких сервисах Firebase.
- Ознакомьтесь с контрольным списком запуска Firebase .
Возникли проблемы с Firebase и вашим проектом Android? Посетите раздел «Устранение неполадок и часто задаваемые вопросы Android» .