Узнайте больше о Firebase на платформах Apple.

Разрабатывая приложение Apple с использованием Firebase, вы можете обнаружить концепции, которые незнакомы или специфичны для Firebase. Цель этой страницы — ответить на эти вопросы или указать ресурсы, где можно узнать больше.

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

Поддержка библиотеки Firebase по платформам

В следующей таблице описано, какие библиотеки Firebase совместимы с какими платформами Apple. На данный момент watchOS поддерживается только сообществом. Инструкции по установке и известные проблемы см. в репозитории Firebase SDK для платформ Apple на GitHub .

Библиотека iOS macOS Мак
Катализатор
ТВОС WatchOS
А/Б-тестирование
Аналитика v8.9.0+ v8.9.0+ v8.9.0+
Аналитика без идентификатора объявления v8.9.0+ v8.9.0+ v8.9.0+
Аналитика конверсии на устройстве
Проверка приложений Поставщик DeviceCheck смотретьOS 9+
Поставщик сертификатов приложений App Check iOS 14+ macOS 11+ Катализатор 14+ ТВОС 15+ смотретьOS 9+
Проверка приложений и поставщики отладки
Распространение приложений
Аутентификация частичный частичный частичный частичный
Облачный пожарный магазин
Облачные функции
Облачный обмен сообщениями
Облачное хранилище
Крашлитикс
Динамические ссылки
Установки Firebase
Загрузчик моделей Firebase ML
Обмен сообщениями в приложении
Мониторинг производительности
База данных реального времени
Удаленная настройка

Клипы приложений

Большинство библиотек Firebase будут создаваться и работать в цели App Clip, однако многие из них ограничены из-за ограничений базовой ОС. Известные проблемы включают в себя:

  • Динамические ссылки не могут перенаправлять пользователей к клипу приложения, если они нажимают ссылку без установленного приложения.
  • База данных Firestore и Realtime не может загружать данные в клипы приложений из-за базовой зависимости CFStream.

Полный список известных проблем App Clip см. в репозитории Firebase GitHub .

GoogleService-Info.plist

В рамках добавления Firebase в ваш проект Apple вам необходимо добавить в свой проект файл конфигурации GoogleService-Info.plist . Если вы хотите использовать несколько проектов Firebase в одном приложении, ознакомьтесь с документацией по настройке нескольких проектов .

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

Менеджер пакетов Swift

Узнайте больше об интеграции Swift Package Manager в нашем руководстве .

Расширения Swift

Расширения SDK Swift для платформы Firebase Apple — это небольшие дополнения с открытым исходным кодом к существующим библиотекам платформы Firebase Apple, которые позволяют вашему коду использовать функции Swift, специфичные для языка.

Доступны следующие платформы расширений Swift:

  • FirebaseAnalyticsSwift
  • FirebaseDatabaseSwift
  • FirebaseFirestoreSwift
  • FirebaseInAppMessagingSwift (бета)
  • FirebaseRemoteConfigSwift

Начиная с Firebase 9.0, некоторые библиотеки Firebase, включая их интерфейсы Objective-C, реализованы в Swift и предоставляют собственные функции Swift без включения вспомогательной зависимости. Следующие SDK предоставляют собственные API-интерфейсы Swift без использования SDK расширения:

  • FirebaseFunctions
  • FirebaseStorage

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

pod 'FirebaseAnalyticsSwift', '~> 10.0'
pod 'FirebaseInAppMessagingSwift', '~> 10.0-beta'
pod 'FirebaseDatabaseSwift'

С помощью диспетчера пакетов Swift импортируйте нужные библиотеки расширений Swift непосредственно из того же репозитория, что и SDK Firebase Apple для платформ.

SwiftUI

Firebase полностью поддерживает SwiftUI, хотя настройка будет немного отличаться от настроек приложений UIKit, чтобы Firebase могла правильно работать в среде, полностью поддерживающей SwiftUI. Более подробную информацию можно найти в этой записи в блоге Питера Фризе.

Приложения SwiftUI должны отключить поворот из-за известной проблемы . Дополнительные сведения см. в разделе о переключении делегатов приложений .

Делегат приложений крутится

Firebase изменяет некоторые методы в классе делегата приложения вашего приложения, чтобы автоматически подключать определенные службы Firebase к обратным вызовам ОС, например FCM и токен APNs. Вы можете отключить поворот в своем приложении, добавив флаг FirebaseAppDelegateProxyEnabled в файл Info.plist приложения и установив для него значение NO .

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

Поддержка iOS 14

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

Постоянная поддержка Objective-C.

Чтобы упростить сопровождение документации по платформам Apple, Firebase решила сконцентрироваться на фрагментах Swift и примерах кода в наших руководствах и других материалах для разработчиков. Фрагменты Objective-C будут удалены из наших руководств начиная с 1 января 2024 г. Мы продолжим поддерживать актуальность справочной документации по Objective-C для всех продуктов Firebase.

Ресурсы с открытым исходным кодом для Firebase SDK платформы Apple

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

SDK платформы Firebase Apple

Все Firebase SDK для платформ Apple, за исключением Analytics, разрабатываются как библиотеки с открытым исходным кодом в нашем общедоступном репозитории Firebase GitHub .

FirebaseUI

FirebaseUI — это набор библиотек утилит, созданных на базе Firebase, включая встроенный интерфейс пользовательского интерфейса для аутентификации и утилит данных для Cloud Firestore и базы данных Realtime. Более подробную информацию о FirebaseUI смотрите на нашей странице GitHub .

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

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

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