Firebase Realtime Database – это облачная база данных. Данные хранятся в формате JSON и синхронизируются в режиме реального времени со всеми подключенными клиентами. Когда вы создаете кросс-платформенные приложения с помощью наших SDK для Android, iOS и JavaScript, все ваши клиенты используют один экземпляр Realtime Database и автоматически получают обновления с новейшими данными.
Firebase Realtime Database доступен на всех платформах Apple, включая iOS, macOS, macOS Catalyst, tvOS и watchOS. Она недоступна для блиц-приложений. В инструкциях по настройке на этой странице в качестве примеров используется iOS, но они являются общими и подходят для любой платформы Apple.
Требования
- Установите Firebase SDK.
- Добавьте приложение в проект Firebase в консоли Firebase.
Создание базы данных
В консоли Firebase выберите Databases & Storage (Базы данных и хранилище) > Realtime Database (База данных в реальном времени).
Нажмите Создать базу данных.
Выберите начальный режим для устройства "Firebase Security Rules":
- Режим тестирования
Подходит для начала работы с клиентскими библиотеками для мобильных устройств и веб-страниц, но позволяет любому пользователю читать и перезаписывать ваши данные. После тестирования обязательно ознакомьтесь с разделом Правила Firebase Realtime Database.
Чтобы начать работу с SDK для веб-сайтов, Apple или Android, выберите тестовый режим.
- Режим блокировки
Запрещает все операции чтения и записи для мобильных и веб-клиентов. Ваши аутентифицированные серверы приложений по-прежнему могут получать доступ к базе данных.
Выберите местоположение базы данных.
В зависимости от местоположения базы данных URL новой базы данных будет иметь один из следующих форматов:
(для баз данных вDATABASE_NAME.firebaseio.comus-central1) (для баз данных во всех остальных местоположениях)DATABASE_NAME.REGION.firebasedatabase.app
Нажмите Готово.
При включении Realtime Database также включается API в Cloud API Manager.
Добавьте Firebase Realtime Database в свое приложение
Для установки зависимостей Firebase и управления ими используйте Swift Package Manager.
- Откройте проект приложения в Xcode и перейдите в меню File (Файл) > Add Packages (Добавить пакеты).
- Когда появится запрос, добавьте хранилище Firebase SDK для платформ Apple:
- Выберите библиотеку Realtime Database.
- Добавьте флаг
-ObjCв раздел Other Linker Flags (Другие флаги компоновщика) в настройках сборки целевого объекта. - После этого Xcode автоматически начнет распознавать и скачивать зависимости в фоновом режиме.
https://github.com/firebase/firebase-ios-sdk.git
Настроить Realtime Database Security Rules
Realtime Database предоставляет декларативный язык правил, который позволяет определить, как должны быть структурированы ваши данные, как они должны быть проиндексированы и когда ваши данные могут быть прочитаны и записаны.
Настроить Firebase Realtime Database
Инициализировать Firebase нужно до того, как будет создана или использована ссылка на приложение Firebase. Если вы уже сделали это для другой функции Firebase, можете пропустить этот шаг.
- Импортируйте модуль
FirebaseCoreвUIApplicationDelegate, а также любые другие модули Firebase, которые использует делегат приложения. Например, чтобы использовать Cloud Firestore и Authentication:SwiftUI
import SwiftUI import FirebaseCore import FirebaseFirestore import FirebaseAuth // ...
Swift
import FirebaseCore import FirebaseFirestore import FirebaseAuth // ...
Objective-C
@import FirebaseCore; @import FirebaseFirestore; @import FirebaseAuth; // ...
- Настройте общий экземпляр
FirebaseAppв методеapplication(_:didFinishLaunchingWithOptions:)делегата приложения:SwiftUI
// Use Firebase library to configure APIs FirebaseApp.configure()
Swift
// Use Firebase library to configure APIs FirebaseApp.configure()
Objective-C
// Use Firebase library to configure APIs [FIRApp configure];
- Если вы используете SwiftUI, вам нужно создать делегат приложения и прикрепить его к структуре
Appс помощьюUIApplicationDelegateAdaptorилиNSApplicationDelegateAdaptor. Также необходимо отключить подмену делегата приложения. Дополнительную информацию можно найти в инструкциях по SwiftUI.SwiftUI
@main struct YourApp: App { // register app delegate for Firebase setup @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate var body: some Scene { WindowGroup { NavigationView { ContentView() } } } }
- Создайте ссылку на базу данных и укажите место, куда нужно записать данные.
Swift
Примечание. Эта функция Firebase недоступна для блиц-приложений.var ref: DatabaseReference! ref = Database.database().reference()
Objective-C
Примечание. Эта функция Firebase недоступна для блиц-приложений.@property (strong, nonatomic) FIRDatabaseReference *ref; self.ref = [[FIRDatabase database] reference];
Дальнейшие действия
Узнайте, как структурировать данные для Realtime Database.
Подготовка к запуску приложения:
Включите App Check, чтобы доступ к вашим базам данных был только у ваших приложений.
Настройте оповещения о бюджете для проекта в консоли Google Cloud.
Чтобы получить общее представление об использовании проекта в нескольких сервисах Firebase, отслеживайте панель управления Использование и оплата в консоли Firebase. Подробную информацию об использовании можно найти на панели Realtime Database Использование.
Ознакомьтесь с контрольным списком для запуска Firebase.