0Pricing
Android Academy · Урок

Настройка Firebase

Подключите приложение к проекту Firebase

«Настройка Firebase» — бесплатный урок Android Academy на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Android Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Android Academy содержит 4 уроков всего.

Что такое Firebase

Firebase — платформа Google для разработки приложений. Она предоставляет вашему приложению Android готовую серверную часть, поэтому вам не нужно самостоятельно создавать и размещать серверы.

На этом курсе вы подключите приложение к Firebase, а затем воспользуетесь тремя наиболее популярными сервисами:

  • Аутентификация — вход пользователей по электронной почте или через Google
  • Cloud Firestore — база данных NoSQL с обновлением в реальном времени
  • Обмен сообщениями Cloud (FCM) — push-уведомления

Этот первый урок посвящён настройке: созданию проекта и подключению его к приложению Android.

Создание проекта Firebase

Всё начинается в консоли Firebase по адресу console.firebase.google.com.

  • Нажмите Добавить проект и укажите его название.
  • Каждый проект Firebase связан с проектом Google Cloud, который создаётся в фоновом режиме.
  • В одном проекте Firebase может находиться несколько приложений: Android, iOS и веб-приложения.

Внутри проекта зарегистрируйте конкретное приложение Android с помощью его идентификатора приложения (имени пакета), например com.coddykit.demo. По этому идентификатору Firebase определяет, от какого приложения поступил запрос.

Файл google-services.json

После регистрации приложения Android Firebase создаёт конфигурационный файл с именем google-services.json.

Скачайте его и поместите в корневую папку модуля приложения (рядом с build.gradle.kts, внутри каталога app/).

В этом JSON-файле содержатся идентификатор проекта, ключи API и регистрационные данные приложения. Инструменты сборки считывают его автоматически — почти никогда не нужно открывать его вручную.

// File location in your project:
// app/google-services.json

// It is generated for you and looks roughly like:
{
  "project_info": {
    "project_id": "my-demo-app",
    "storage_bucket": "my-demo-app.appspot.com"
  },
  "client": [
    { "client_info": { "mobilesdk_app_id": "1:1234567890:android:abc123" } }
  ]
}

Добавление плагина Google Services

Чтобы Gradle мог прочитать google-services.json, добавьте плагин Google Services для Gradle.

Современный подход использует блок plugins с каталогами версий. Объявите плагин в корневом файле сборки (с параметром apply false), а затем примените его в файле сборки модуля.

// Root build.gradle.kts (project level)
plugins {
    id("com.android.application") version "8.5.0" apply false
    id("org.jetbrains.kotlin.android") version "2.0.0" apply false
    id("com.google.gms.google-services") version "4.4.2" apply false
}

Применение плагина в модуле

В файле build.gradle.kts модуля app примените плагин, чтобы во время сборки он обработал конфигурационный файл.

Без этой строки инициализация Firebase завершится ошибкой во время выполнения, даже если всё остальное настроено правильно.

// app/build.gradle.kts (module level)
plugins {
    id("com.android.application")
    id("org.jetbrains.kotlin.android")
    id("com.google.gms.google-services")
}

Firebase BoM

У Firebase много библиотек: Auth, Firestore, Messaging, Analytics и другие. Синхронизировать их версии легко с помощью спецификации материалов (BoM).

Объявите BoM один раз, а затем добавляйте каждую зависимость Firebase без указания версии — BoM подберёт совместимые версии автоматически.

// app/build.gradle.kts -> dependencies { }
dependencies {
    // One BoM controls all Firebase versions
    implementation(platform("com.google.firebase:firebase-bom:33.1.0"))

    // No version numbers here - the BoM decides
    implementation("com.google.firebase:firebase-auth")
    implementation("com.google.firebase:firebase-firestore")
    implementation("com.google.firebase:firebase-messaging")
}

Автоматическая инициализация

Возможно, вы ожидаете, что нужно вызвать что-то вроде Firebase.initialize() в классе Application. В современном SDK обычно этого делать не нужно.

Плагин Google Services автоматически создаёт поставщик инициализации, который запускается при старте приложения и использует google-services.json. К моменту запуска вашего Activity Firebase уже готов.

// You normally do NOT need this anymore:
// FirebaseApp.initializeApp(context)

// Firebase is initialized automatically on app launch.
// You can just start using a service:
import com.google.firebase.Firebase
import com.google.firebase.firestore.firestore

val db = Firebase.firestore   // ready to use

Стиль Kotlin KTX

Firebase предоставляет идиоматичные средства доступа Kotlin через объект Firebase. Вместо FirebaseFirestore.getInstance() вы пишете Firebase.firestore.

Такие расширения читаются естественнее и рекомендуются в современном коде Android.

import com.google.firebase.Firebase
import com.google.firebase.auth.auth
import com.google.firebase.firestore.firestore
import com.google.firebase.messaging.messaging

val auth = Firebase.auth          // FirebaseAuth
val db = Firebase.firestore       // FirebaseFirestore
val fcm = Firebase.messaging      // FirebaseMessaging

// Equivalent old style:
// val auth = FirebaseAuth.getInstance()

Добавление разрешения на интернет

Firebase взаимодействует с серверами Google, поэтому приложению нужен доступ к сети. Объявите разрешение INTERNET в манифесте.

Это обычное разрешение: оно предоставляется автоматически во время установки, поэтому запрашивать его во время выполнения не нужно.

<!-- AndroidManifest.xml -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android">

    <uses-permission android:name="android.permission.INTERNET" />

    <application ... >
        <!-- activities, services -->
    </application>
</manifest>

Проверка подключения

Быстро проверить правильность настройки можно, прочитав значение или проверив текущее приложение Firebase. Если Firebase не был инициализирован, обращение к сервису вызовет ошибку.

Многие разработчики также временно добавляют зависимость Analytics и ищут событие в консоли в качестве поверхностного теста, но простого обращения к сервису в коде уже достаточно, чтобы подтвердить правильность подключения.

import android.util.Log
import com.google.firebase.Firebase
import com.google.firebase.firestore.firestore

fun verifyFirebase() {
    val app = Firebase.firestore.app
    Log.d("Firebase", "Connected to project: ${app.options.projectId}")
}

Распространённые ошибки настройки

Если Firebase не работает, сначала проверьте следующее:

  • Неправильное имя пакета — applicationId приложения должен совпадать с зарегистрированным значением.
  • Отсутствует google-services.json — файл должен находиться в папке app/.
  • Плагин не применён в файле сборки модуля.
  • Нет разрешения INTERNET в манифесте.
  • Не добавлен отпечаток SHA-1 — он потребуется позднее для входа через Google.

Быстрая проверка

Для чего нужен файл google-services.json?

Итоги: настройка завершена

Вы подключили приложение Android к Firebase. Основные шаги:

  • Создайте проект в консоли Firebase и зарегистрируйте приложение по имени пакета.
  • Добавьте google-services.json в папку app/.
  • Примените плагин Google Services и добавьте Firebase BoM вместе с необходимыми библиотеками.
  • Firebase инициализируется автоматически — обращайтесь к сервисам через Firebase.auth, Firebase.firestore и другие средства.
  • Не забудьте добавить разрешение INTERNET.

Далее вы научитесь выполнять вход пользователей с помощью Firebase Authentication.

Часто задаваемые вопросы

Урок «Настройка Firebase» бесплатный?

Да — полный текст урока «Настройка Firebase» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Android Academy, подпишись на CoddyKit PRO. Курс Android Academy содержит 4 уроков всего.

Чему я научусь в уроке «Настройка Firebase»?

Подключите приложение к проекту Firebase Ты практикуешь Android Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Android Academy?

Предыдущий опыт не требуется. Android Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.

Сколько времени занимает урок «Настройка Firebase»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Android Academy?

Да. Каждый урок Android Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Настройка Firebase
  2. Аутентификация Firebase
  3. Основы Cloud Firestore
  4. Отправка уведомлений через Cloud Messaging
← Назад к Android Academy