Firebase, что такое Android

Обновлено: 30.11.2022

Разработка с открытым исходным кодом Firebase для Android

Этот репозиторий содержит часть исходного кода Firebase Android SDK. В настоящее время он включает следующие библиотеки Firebase и некоторые из их зависимостей:

  • firebase-abt
  • firebase-appdistribution
  • firebase-общий
  • firebase-common-ktx
  • firebase-crashlytics
  • firebase-crashlytics-ktx
  • firebase-crashlytics-ndk
  • firebase-база данных
  • firebase-database-ktx
  • коллекция баз данных firebase
  • firebase-datatransport
  • firebase-firestore
  • firebase-firestore-ktx
  • firebase-функции
  • firebase-функции-ktx
  • firebase-inappmessaging
  • firebase-inappmessaging-ktx
  • firebase-inappmessaging-display
  • firebase-inappmessaging-display-ktx
  • firebase-сообщения
  • firebase-messaging-directboot
  • firebase-perf
  • firebase-perf-ktx
  • firebase-remote-config
  • firebase-remote-config-ktx
  • firebase-хранилище
  • firebase-storage-ktx

Оглавление

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

⚠️ Запуск тестов с ошибкой

Чтобы запустить с ошибкой, добавьте withErrorProne в командную строку, например,

./gradlew : :check withErrorProne .

< /цитата>

Это тесты, которые выполняются на локальной виртуальной машине Java (JVM). Во время выполнения эти тесты выполняются для модифицированной версии android.jar, из которой удалены все окончательные модификаторы. Это позволяет нам тестировать поведение в нужных местах и ​​использовать популярные библиотеки имитации.

Модульные тесты можно запускать в командной строке

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

Наряду с эспрессо они также используются для тестирования проектов с компонентами пользовательского интерфейса.

Прежде чем вы сможете запускать интеграционные тесты, вам нужно добавить файл google-services.json в корень вашей кассы. Вы можете использовать файл google-services.json из любого проекта, включающего приложение для Android, хотя вам, скорее всего, понадобится файл, отдельный от имеющихся у вас производственных данных, поскольку наши тесты записывают случайные данные.

Если у вас еще нет подходящего проекта тестирования:

  • Откройте консоль Firebase.
  • Если у вас еще нет проекта, который вы хотите использовать для тестирования, создайте его.
  • Добавить в проект приложение для Android
  • Дайте приложению любое имя пакета, которое вам нравится.
  • Скачайте получившийся файл google-services.json и поместите его в корень страницы оформления заказа.

Выполнение интеграционных тестов на локальном эмуляторе

Интеграционные тесты можно выполнять в командной строке, запустив

Выполнение интеграционных тестов в тестовой лаборатории Firebase

  • gcloud необходимо установить на локальный компьютер
  • gcloud необходимо настроить для проекта, в котором включена оплата
  • Gcloud должен пройти аутентификацию с учетными данными, имеющими роль "Администратор тестовой лаборатории Firebase".

Интеграционные тесты можно выполнять в командной строке, запустив

При этом будут выполняться тесты на устройствах, настроенных для каждого проекта. Если для проекта ничего не настроено, тесты будут выполняться на model=Pixel2,version=27,locale=en,orientation=portrait .

Проекты можно настроить следующим образом:

Firebase SDK использует некоторые специальные аннотации для инструментальных целей.

API, которые необходимо сохранить до тех пор, пока среда выполнения приложения не сможет быть аннотирована с помощью @Keep. Аннотация @Keep благословлена на то, чтобы быть учтенной конфигурацией proguard по умолчанию для Android. Обычное использование этой аннотации связано с отражением. Эти API не следует рекомендовать, поскольку их нельзя защитить.

API, предназначенные для использования Firebase SDK, должны быть снабжены аннотацией @KeepForSdk . Ключевым преимуществом здесь является то, что аннотация благословлена выдавать ошибки линтера в Android Studio, если она используется разработчиком из пакета, отличного от firebase, что обеспечивает ценную защиту.

Мы аннотируем API, предназначенные для использования разработчиками, с помощью @PublicAPI. Эта аннотация будет использоваться инструментами для информирования об обновлении версии (основной, вспомогательной, исправлении), которая требуется для следующего выпуска.

Firebase SDK сами по себе не поддерживают proguard, но поддерживают его. Firebase SDK сами по себе совместимы с proguard, но зависимости Firebase SDK могут быть несовместимы.

В дополнение к файлу preguard.txt проекты объявляют дополнительный набор правил proguard в файле proguard.txt, которые соблюдаются приложением разработчика при создании proguarded apk приложения. Этот файл обычно содержит правила хранения, которые необходимо соблюдать на этапе предварительной защиты приложения.

Рекомендуется применять эти явные правила только к библиотекам, исходный код которых находится за пределами кодовой базы firebase-android-sdk, что делает подходы, основанные на аннотациях, недостаточными. proguard.txt коллективно определяет API, которые сохраняются во время выполнения.

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

Любые зависимости внутри проектов или вне Firebase кодируются как зависимости maven в файле pom, который сопровождает опубликованный артефакт. Это позволяет системе сборки разработчика (обычно Gradle) строить граф зависимостей и выбирать зависимости, используя собственную стратегию разрешения

Самый простой способ опубликовать проект и все связанные с ним зависимости — просто опубликовать все проекты. Следующая команда создает зависимости SNAPSHOT для всех проектов. Все зависимости уровня pom в опубликованных артефактах также будут указывать на версии SNAPSHOT, опубликованные совместно.

Разработчики могут зависеть от этих локально опубликованных версий, добавив репозиторий mavenLocal() в ваш блок репозиториев в файле build.gradle вашего модуля приложения.

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

Код в этом репозитории отформатирован с помощью инструмента google-java-format. Вы можете включить это форматирование в Android Studio, загрузив и установив плагин google-java-format. Плагин отключен по умолчанию, но репозиторий содержит информацию о конфигурации и ссылки на дополнительные плагины.

Чтобы выполнить форматирование всего проекта, вы можете запустить

Мы любим делать взносы! Чтобы начать, ознакомьтесь с нашими инструкциями по взносам.

Установите или обновите 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.

    Создайте проект Firebase

    В консоли Firebase нажмите Добавить проект .

    Чтобы добавить ресурсы Firebase в существующий проект Google Cloud, введите имя проекта или выберите его в раскрывающемся меню.

    Что создает новый проект, желаемое имя проекта. Вы также можете дополнительно отредактировать идентификатор проекта, отображаемый под названием проекта.

    При полученной смеси прочтите и примите условия Firebase .

    Нажмите Продолжить .

    (Необязательно) Настройте Google Analytics для своего проекта, что позволит вам использовать любой из следующих продуктов Firebase:

    Либо есть выборочная учетная запись Google Analytics, либо создайте новую учетную запись.

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

    Firebase автоматически выделяет ресурсы для вашего проекта Firebase. Когда процесс завершится, вы найдете на странице обзора вашего проекта Firebase в консоли Firebase.

    Шаг 2. Зарегистрируйте свое приложение в Firebase.

    Введите имя вашего пакета приложений в поле имени пакета Android.

    Что такое имя пакета и где его найти?

    • Имя пакета уникально идентифицирует ваше приложение в магазине Google Play.

    • Имя пакета часто называют идентификатором приложения .

    • Найдите имя пакета вашего приложения в файле Gradle вашего модуля (уровня приложения), обычно app/build.gradle (пример имени пакета: com.yourcompany.yourproject ).

    • Имейте в виду, что значение этого пакета чувствительно к регистру, и его нельзя изменить для приложений Firebase для Android после его регистрации в предстоящем проекте Firebase.

    (Необязательно) Введите другую информацию о приложении: псевдоним приложения и сертификат подписки отладки SHA-1 .

    Как псевдоним приложения и сертификат подписки отладки SHA-1 использовать в Firebase?

    • Псевдоним приложения . Внутренний удобный идентификатор, который виден только вам в консоли Firebase.

    • Сертификат подписки отладки SHA-1 : хэш SHA-1 требуется для проверки подлинности Firebase (при регистрации входа через Google или номера телефона ) и раскрытия ссылок Firebase .

    Щелкните Зарегистрировать приложение .

    Шаг 3. Добавьте файл конфигурации Firebase.

    Добавьте файл сборки Firebase Android в свое приложение:

    Нажмите Загрузить google-services.json , чтобы получить файл конфигурации Firebase Android ( ).

    Переместите файл сборки в каталог модуля (уровня приложения) вашего приложения.

    Что нужно знать об этом конфигурационном файле?

    • Файл набора Firebaseне содержит исключительных, но не секретных идентификаторов вашего проекта. Чтобы узнать больше об этом конфигурационном файле, посетите страницу Understand Firebase Projects .

    • Вы можете снова загрузить файл конфигурации Firebase в любое время.

    • Убедитесь, что к имени файла сборки не добавляются дополнительные символы, например (2) .

    Чтобы включить свои продукты Firebase в свое приложение, добавил приложение google-services в файлы Gradle.

    В файле Gradle корневого (уровня проекта) ( build.gradle ) добавлены правила уровня включения подключаемого модуля Google Services Gradle. Убедитесь, что у вас также есть репозиторий Google Maven.

    В файле вашего модуля Gradle (уровня приложения) (обычно app/build.gradle ) в качестве дополнения Google Services Gradle:

    Шаг 4. Добавьте SDK Firebase в свое приложение.

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

    Аналитика включена

    Джава

    Котлин+КТХ

    Используя Firebase Android BoM, ваше приложение всегда будет использовать обновленную версию библиотеки Firebase Android.

    Аналитика не включена

    Джава

    Котлин+КТХ

    Используя Firebase Android BoM, ваше приложение всегда будет использовать обновленную версию библиотеки Firebase 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 .

    На панели Assistant выберите продукт Firebase, который нужно добавить в приложение.Разверните его раздел, нажав ссылку на руководство (например, ).

    Что делает этот рабочий процесс?

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

      Вот несколько советов по настройке проекта Firebase:

      • Посетите Understand Firebase Projects, чтобы узнать больше о рекомендациях и рекомендациях по добавлению приложений в проект Firebase, в том числе о том, как собрать несколько вариантов сборки.

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

      Синхронизируйте свое приложение, чтобы убедиться, что все зависимости имеют необходимую версию.

      На панели Assistant отслеживается оставшаяся ошибка по настройке для выбранного продукта Firebase.

      Добавьте столько продуктов Firebase, сколько хотите, с помощью Firebase Assistant!

      Вы содержите Котлин?
      Вы можете использовать альтернативные библиотеки расширений Kotlin (KTX), которые позволяют писать красивый и идиоматический код Kotlin.

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

      Вот и все! Обязательно ознакомьтесь с рекомендуемыми увлекательными шагами.

      Доступные библиотеки

      В этом разделе ссылок продукты Firebase, поддерживаемые для Android, и их зависимость от Gradle. Распространяется больше об этих библиотеках Firebase для Android:

      Репозиторий Firebase Android SDK на GitHub

      Обратите внимание, что в коллекции Firebase Android BoM вы не испытываете беспокойства по версии, особенно библиотеке при обнаружении зависимости библиотек Firebase в build.gradle .

      Библиотека Firebase Android firebase-core больше не нужна. Этот SDK включает Firebase SDK для Google Analytics.

      Теперь необходимо использовать Google Analytics или продукт, который рекомендуется добавить Analytics (см. Таблицу ниже), вам явно следует объявить Google Analytics: com.google.firebase:firebase-analytics или com.google.firebase:firebase-analytics- кткс .

      Джава

      Услуга или продукт Зависимость Gradle Самый последний
      версия
      Добавить аналитику?
      Спецификация Firebase для Android
      (Список материалов)
      com.google.firebase: firebase-бом

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

      Котлин+КТХ

      Услуга или продукт Зависимость Gradle Самый последний
      версия
      Добавить аналитику?
      Спецификация Firebase для Android
      (Список материалов)
      com.google.firebase: firebase-бом

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

      Следующие шаги

      Добавьте сервисы Firebase в свое приложение:

      Получите информацию о посещении пользователей с помощью Google Analytics.

      Настроить поток аутентификации пользователя с помощью Authentication .

      Храните данные, например информацию о пользователях, в Cloud Firestore или в базе данных реального времени.

      Храните файлы, например фотографии и видео, в облачном хранилище.

      Запускает серверный код, работающий в среде, с помощью Cloud Functions .

      Отправляйте консоль с помощью Cloud Messaging .

      Узнайте, когда и почему происходит сбой вашего приложения с помощью Crashlytics .

      Узнайте о Firebase:

      Посетите страницу Understand Firebase Projects, чтобы узнать больше о проектах Firebase и рекомендациях по работе с проектами.

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

      Получите практический опыт работы с Firebase Android Codelab .

      Узнайте больше с курсом Firebase на выходных .

      Подготовьтесь к запуску вашего приложения:

      Если не указано иное, содержимое этой страницы предоставляется по лицензии Creative Commons Attribution 4.0, а образцы кода — по лицензии Apache 2.0.Подробнее см. в Правилах сайта Google Developers. Java является зарегистрированным товарным знаком Oracle и/или ее дочерних компаний.

      Отчеты по мобильным приложениям в Google Analytics предоставляют информацию об использовании приложений, вовлеченности пользователей и межсетевой атрибуции.

      Отчеты по приложениям в Google Analytics изначально интегрированы с Firebase, платформой для разработчиков приложений Google, что позволяет создавать неограниченные отчеты по 500 различным событиям. Отчеты по мобильным приложениям в Google Analytics помогают вам четко понять, как ведут себя ваши пользователи, что позволяет вам принимать обоснованные решения в отношении маркетинга приложений и оптимизации производительности. Примечание. В консоли Firebase и других ресурсах вы можете увидеть название «Google Analytics для Firebase» — это просто то, как мы относимся к нашему последнему поколению аналитики приложений за пределами интерфейса Google Analytics. В старых ресурсах иногда может упоминаться «Firebase Analytics» — прежнее название этих отчетов.

      Основные возможности

      Неограниченное количество отчетов Неограниченное количество отчетов приложений по 500 различным событиям.
      Сегментация аудитории Пользовательские аудитории могут быть определены на основе данных устройства, пользовательских событий или свойств пользователя. Эти аудитории можно использовать с функциями Firebase, а также с рекламными продуктами Google.

      Как это работает?

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

      Отчеты о приложениях в Google Analytics также интегрируются с рядом других функций Firebase. Например, он автоматически регистрирует события, соответствующие вашим уведомлениям Firebase, и предоставляет отчеты о влиянии каждой кампании.

      Отчеты по приложениям в Google Analytics включают межсетевую атрибуцию. С его помощью вы можете увидеть эффективность своих кампаний по органическим и платным каналам, чтобы понять, какие методы наиболее эффективны для привлечения ценных пользователей. Если вам нужно выполнить пользовательский анализ или углубиться в свои пользовательские параметры, вы можете связать свои данные Analytics с BigQuery и использовать шаблоны в Студии данных для их визуализации.

      Интеграция с другими сервисами

      BigQuery Свяжите аналитику вашего приложения с BigQuery, где вы сможете выполнять собственный анализ всего набора аналитических данных и импортировать другие источники данных.
      Отчеты о сбоях Firebase Отчеты о приложениях в Google Analytics регистрируют события для каждого сбоя, чтобы вы могли получить представление о частоте сбоев для разных версий или регионов, что позволяет вам получить представление о том, какие пользователи затронуто. Вы также можете создавать аудитории для пользователей, которые столкнулись с несколькими сбоями, и отвечать с помощью уведомлений Firebase, направленных на эту аудиторию.
      Уведомления Firebase Отчеты приложений в Google Analytics автоматически регистрировать события, соответствующие вашим уведомлениям Firebase, и поддерживать отчеты о влиянии каждой кампании.
      Firebase Remote Config Используйте определения аудитории, чтобы изменить поведение и внешний вид вашего приложения для разных аудиторий без распространения нескольких версий вашего приложения.
      Диспетчер тегов Google Интеграция Диспетчера тегов Google вместе с Firebase SDK позволяет вам для удаленного управления внедрением аналитики. С его помощью вы можете управлять форматом ваших событий, когда они собираются, и даже направлять их в другие места назначения через веб-интерфейс — и после того, как ваше приложение будет распространено.

      Путь реализации

      Подключите свое приложение к Firebase Начать работу с аналитикой приложений очень просто. Просто добавьте Firebase SDK в новое или существующее приложение, и сбор данных начнется автоматически. Затем подключите приложение Firebase к Google Analytics, чтобы получать отчеты о приложении как в интерфейсе Google Analytics, так и в консоли Firebase.
      Записывать пользовательские данные Вы можете использовать аналитика для регистрации пользовательских событий, которые имеют смысл для вашего приложения, таких как покупки, траты виртуальной валюты или достижения.
      Создание аудиторий Вы можете определить аудитории которые важны для вас, и используйте их для сегментации ваших отчетов и получения более глубокой информации.
      Целевые аудитории Затем используйте свои аудитории для целевых сообщений, рекламных акций или новые функции приложений, использующие другие функции Firebase, такие как уведомления и удаленная настройка, или рекламные продукты Google.

      Дальнейшие шаги

      • Добавьте Firebase SDK в свое приложение для Android.
      • Анализируйте отчеты на панели отчетов Analytics.
      • Загрузите пример кода Android.

      Если не указано иное, содержимое этой страницы предоставляется по лицензии Creative Commons Attribution 4.0, а образцы кода — по лицензии Apache 2.0. Подробнее см. в Правилах сайта Google Developers. Java является зарегистрированным товарным знаком Oracle и/или ее дочерних компаний.

      Добро пожаловать в React Native Firebase! Чтобы начать работу, вы должны сначала настроить проект Firebase и установить модуль "приложение".

      React Native Firebase – это официально рекомендуемый набор пакетов, обеспечивающий поддержку React Native для всех сервисов Firebase в приложениях для Android и iOS.

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

      Для установки React Native Firebase необходимо выполнить несколько шагов; установка модуля NPM, добавление файлов конфигурации Firebase и пересборка вашего приложения.

      <р>1. Установить через NPM

      Установите модуль приложения React Native Firebase в корень вашего проекта React Native с помощью NPM или Yarn:

      Модуль @react-native-firebase/app должен быть установлен перед использованием любого другого сервиса Firebase.

      <р>2. Настройка Android

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

      Создание учетных данных Android

      В консоли Firebase добавьте новое приложение для Android и введите сведения о своих проектах. «Имя пакета Android» должно соответствовать имени пакета вашего локального проекта, которое можно найти внутри тега манифеста в файле /android/app/src/main/AndroidManifest.xml вашего проекта.

      Сертификат подписи отладки необязателен для использования Firebase с вашим приложением, но необходим для динамических ссылок, приглашений и аутентификации по телефону. Чтобы сгенерировать сертификат, запустите cd android && ./gradlew signingReport. Это генерирует два вариантных ключа. Вам необходимо скопировать ключи «SHA1» и «SHA-256», которые относятся к варианту ключа «debugAndroidTest». Затем вы можете добавить эти ключи в «отпечатки сертификатов SHA» в своем приложении в консоли Firebase.

      Загрузите файл google-services.json и поместите его в свой проект по следующему адресу: /android/app/google-services.json .

      Настройте Firebase с учетными данными Android

      Чтобы разрешить Firebase на Android использовать учетные данные, в проекте должен быть включен подключаемый модуль google-services. Для этого необходимо изменить два файла в каталоге Android.

      Сначала добавьте подключаемый модуль google-services в качестве зависимости в файл /android/build.gradle:

      Наконец, запустите подключаемый модуль, добавив в файл /android/app/build.gradle следующее:

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

      Создание учетных данных iOS

      В консоли Firebase добавьте новое приложение для iOS и введите сведения о своих проектах. «Идентификатор пакета iOS» должен соответствовать вашему локальному идентификатору пакета проекта. Идентификатор пакета можно найти на вкладке «Общие» при открытии проекта с помощью Xcode.

      Загрузите файл GoogleService-Info.plist.

      С помощью Xcode откройте файл проекта /ios/.xcodeproj (или /ios/.xcworkspace, если используете модули).

      Щелкните правой кнопкой мыши имя проекта и выберите "Добавить файлы" в проект, как показано ниже:

      Добавить файлы через Xcode

      Выберите загруженный файл GoogleService-Info.plist со своего компьютера и убедитесь, что флажок "Копировать элементы при необходимости" установлен.

       Выберите

      Настройте Firebase с учетными данными iOS

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

      Для этого откройте файл /ios//AppDelegate.m и добавьте следующее:

      В верхней части файла импортируйте Firebase SDK:

      В существующий метод didFinishLaunchingWithOptions добавьте следующее в начало метода:

      <р>4. Автосвязывание и перестроение

      После выполнения вышеуказанных шагов библиотека React Native Firebase должна быть связана с вашим проектом, а ваше приложение необходимо пересобрать.

      Пользователи React Native 0.60+ автоматически получают доступ к «автоматической привязке», не требуя дополнительных действий по установке вручную. Чтобы автоматически связать пакет, перестройте свой проект:

      После успешного связывания и пересборки ваше приложение будет подключено к Firebase с помощью модуля @react-native-firebase/app. Этот модуль не предоставляет много функций, поэтому для использования других служб Firebase каждый из модулей для отдельных служб Firebase необходимо устанавливать отдельно.

      Если вы используете старую версию React Native без поддержки автоматического связывания или хотите интегрироваться в существующий проект, вы можете выполнить шаги по установке вручную для iOS и Android.

      Android включение Multidex

      Поскольку ваше приложение начинает расти с большим количеством нативных зависимостей, ваши сборки могут начать давать сбой из-за распространенной ошибки Execution failed for task ':app:mergeDexDebug'. Эта ошибка возникает, когда Android достигает предела в 64 тыс. методов.

      Одним из распространенных решений является включение поддержки multidex для Android. Это распространенное решение проблемы, однако рекомендуется прочитать документацию Android, чтобы понять, как это может повлиять на ваше приложение.

      Для поддержки механизма JavaScript Hermes требуется React Native 0.64.0 или новее. Однако мы не можем гарантировать, что React Native Firebase отлично работает на нем, поэтому тщательно протестируйте свой проект.

      Переопределение собственных версий SDK

      React Native Firebase внутренне устанавливает версии собственных SDK, которые использует каждый модуль. Каждый выпуск библиотеки тестируется на фиксированном наборе версий SDK (например, Firebase SDK), что позволяет нам быть уверенными, что все функции, поддерживаемые библиотекой, работают должным образом.

      Иногда требуется изменить эти версии, чтобы они хорошо взаимодействовали с другими библиотеками React Native; поэтому мы разрешаем вручную переопределять эти собственные версии SDK.

      Использование собственных версий SDK обычно не рекомендуется, так как это может привести к критическим изменениям в вашем приложении. Будьте осторожны.

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

      После внесения изменений перестройте приложение с помощью npx react-native run-android .

      Откройте ваши проекты /ios/Podfile и добавьте любые глобальные переменные, показанные ниже, в начало файла:

      После внесения изменений переустановите модули проектов с помощью установки модуля и перестройте проект с помощью npx react-native run-ios .

      Увеличение памяти сборки Android

      Поскольку вы добавляете больше модулей Firebase, к системе сборки Android предъявляются невероятные требования, и настройки памяти по умолчанию не будут работать. Чтобы избежать ошибок OutOfMemory во время сборки Android, вы должны раскомментировать альтернативный параметр памяти Gradle, представленный в /android/gradle.properties :

      На Android React Native Firebase использует исполнитель пула потоков для повышения производительности и управления ресурсами. Чтобы увеличить пропускную способность, вы можете настроить исполнитель пула потоков через файл firebase.json в корне вашего проекта:

      КлючОписание
      android_task_executor_maximum_pool_size< /td> Максимальный размер пула ThreadPoolExecutor. По умолчанию 1 . Большие значения обычно улучшают производительность при выполнении большого количества асинхронных задач, например. Запросы к хранилищу огня. Установка этого значения на 0 полностью отключает исполнителя в пуле, и все задачи выполняются последовательно для каждого модуля.
      android_task_executor_keep_alive_seconds Время поддержания активности ThreadPoolExecutor в секундах . По умолчанию 3 . Лишние потоки в исполнителе пула будут завершены, если они простаивают дольше, чем время поддержания активности. Это значение не действует, если максимальный размер пула меньше 2 .

      Разрешить статические платформы iOS

      Если вы используете Static Frameworks на iOS, вам нужно вручную включить это для проекта. Чтобы включить поддержку Static Framework, добавьте следующий глобальный элемент в начало файла /ios/Podfile:

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

      React Native Firebase нельзя использовать в приложении Expo Go, так как для этого требуется собственный нативный код.

      Если вы используете Bare Workflow, выполните указанные выше действия по установке.

      Рекомендуется использовать собственный клиент разработки. При запуске нового приложения вы можете запустить npx create-react-native-app -t with-dev-client, чтобы настроить его автоматически. Это также позволит вам использовать службу приложений Expo для тестирования сборок Android и iOS.

      После установки пакета NPM @react-native-firebase/app добавьте подключаемый модуль конфигурации в массив подключаемых модулей файла app.json или app.config.js .

      Кроме того, необходимо указать пути к файлам google-services.json и GoogleService-Info.plist, указав поля expo.android.googleServicesFile и expo.ios.googleServicesFile соответственно.

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

      Затем вам нужно использовать команду expo prebuild --clean, как описано в руководстве «Добавление пользовательского нативного кода», чтобы перестроить приложение с изменениями подключаемого модуля. Если эту команду не запустить, вы столкнетесь с ошибками подключения к Firebase.

      Плагины конфигурации требуются только для модулей React Native Firebase, для которых требуются настраиваемые собственные шаги установки, например изменение проекта Xcode, Podfile , build.gradle , AndroidManifest.xml и т. д. Пакеты, для которых не требуются нативные шаги, будут работать сразу после установки.

      Не все пакеты React Native Firebase еще имеют подключаемые модули конфигурации Expo. Вы можете узнать, поддерживается ли модуль, проверив, содержит ли он файл app.plugin.js в каталоге своего пакета.

      Если вы используете расширение VSCode Expo Tools, IntelliSense отобразит список доступные плагины при редактировании раздела плагинов в app.json .

      Рекламное изображение

      Чтобы создать расширенные настраиваемые локальные уведомления в React Native; ознакомьтесь с нашей бесплатной библиотекой Notifee с открытым исходным кодом.

      Читайте также: