Настройка Firebase для приложений iOS и Android через Flutter

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

В этом мануале вы узнаете, как создать проект Firebase для платформ iOS и Android с помощью Flutter.

Требования

  • Для выполнения этого урока:
  • Создайте аккаунт Google, чтобы получить доступ к Firebase.
  • Установите XCode, если работаете с iOS.
  • Скачайте и установите Flutter.
  • Установите Android Studio или Visual Studio Code.
  • Рекомендуется также установить плагины для редактора кода:

Это руководство протестировано на версиях Flutter v2.0.6, Android SDK v31.0.2 и Android Studio v4.1.

Создание нового проекта Flutter

Начнем с создания простого тестового приложения Flutter, на котором мы сможем потренироваться.

После настройки среды Flutter вы можете запустить эту команду, чтобы создать новое приложение:

flutter create flutterfirebaseexample

Перейдите в каталог нового проекта:

cd flutterfirebaseexample

Команда flutter create создаст простое демонстрационное приложение, которое будет отображать количество нажатий кнопки.

Теперь, когда у нас есть проект Flutter, мы можем добавить Firebase.

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

Войдите в свою учетную запись Google, чтобы получить возможность управлять проектами Firebase. В панели управления Firebase нажмите кнопку Create new project и укажите имя своего проекта:

Let’s start with a name for your project:
MyAligatorProject         

Затем Firebase предоставит вам возможность включить Google Analytics. Для выполнения этого руководства Google Analytics не потребуется, но вы можете включить его, если хотите. Чтобы сделать это, кликните на Enable Google Analytics for this project.

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

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

Настройка поддержки Android

Регистрация приложения

Чтобы добавить поддержку Android в приложение Flutter, выберите в панели управления проекта логотип Android. Вы увидите страницу с заголовком Add Firebase to your Android app.

Здесь важнее всего указать правильное имя пакета Android, которое записывается в поле Android package name (это имя должно совпадать с именем, которое мы указали внутри нашего приложения).

Структура имени пакета включает в себя как минимум два сегмента. Пожалуй, самый распространенный шаблон – использовать доменное имя, название компании и название приложения:

com.example.flutterfirebaseexample

После того как вы выбрали имя, откройте файл android/app/build.gradle в редакторе кода и укажите в параметре applicationId имя вашего пакета Android:

...
defaultConfig {
    // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
    applicationId 'com.example.flutterfirebaseexample'
    ...
}
...

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

Скачивание конфигурационного файла

Следующим шагом будет добавление конфигурационного файла Firebase в наш проект Flutter. Это важно, поскольку он содержит ключи API и другую информацию, необходимую для использования Firebase.

На странице Add Firebase to your Android app выберите Download google-services.json.

Затем переместите файл google-services.json в каталог android/app проекта Flutter.

Добавление Firebase SDK

Теперь нужно обновить конфигурацию Gradle и включить в ней плагин Google Services.

Откройте файл android/build.gradle в редакторе кода и измените его, чтобы он содержал следующие строки:

buildscript {
  repositories {
    // Check that you have the following line (if not, add it):
    google()  // Google's Maven repository
  }
  dependencies {
    ...
    // Add this line
    classpath 'com.google.gms:google-services:4.3.6'
  }
}

allprojects {
  ...
  repositories {
    // Check that you have the following line (if not, add it):
    google()  // Google's Maven repository
    ...
  }
}

Теперь обновите файл приложения android/app/build.gradle, включив в него следующее:
apply plugin: 'com.android.application'
// Add this line
apply plugin: 'com.google.gms.google-services'

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

  // Add the dependencies for any other desired Firebase products
  // https://firebase.google.com/docs/android/setup#available-libraries
}

Сделав это, мы по сути применяем плагин Google Services (а также видим, как можно активировать другие плагины Flutter Firebase, такие как Analytics).

Запустите свое приложение на устройстве Android или симуляторе. Если все сделано правильно, в панели управления должно появиться следующее сообщение:

Congratulations, you’ve successfully added Firebase to your app!

Настройка поддержки iOS

Чтобы добавить поддержку Firebase для iOS, нужно следовать примерно такому же набору инструкций.

Вернитесь в панель управления и выберите Add app, а затем кликните на значок iOS, чтобы перейти к окну настройки.

Регистрация приложения

На данном этапе нам нужно будет добавить iOS Bundle ID. По сути это то же самое, что и Android package name; для единообразия можно использовать то же самое значение.

Затем нужно указать это значение и в других конфигурациях: для этого откройте проект iOS в Xcode по адресу ios/Runner/Runner.xcodeproj и измените Bundle identifier в разделе General.

Нажмите Register app, чтобы перейти к следующему окну.

Скачивание конфигурационного файла

На данном этапе нужно загрузить файл конфигурации и добавить его в наш проект Xcode.

Скачайте файл GoogleService-Info.plist и переместите его в корневой каталог проекта Xcode, Runner.

Обязательно переместите этот файл в Xcode, чтобы создать правильные ссылки на файлы.

Есть дополнительные настройки – установка Firebase SDK и добавление кода инициализации, – но для выполнения этого руководства они не нужны.

Заключение

В этом мануале вы узнали, как настроить использование приложений Flutter через Firebase.

Flutter предоставляет официальную поддержку Firebase и набор библиотек FlutterFire.

В следующих руководствах мы расскажем, как использовать в Flutter такие функции Firebase, как Cloud Firestore, Authentication, Analytics и многое другое.

Читайте также: Управление состоянием Flutter с помощью пакета Provider

Tags: , , , ,

Добавить комментарий