Установка и усиление; Настройка на платформах Apple

Firebase Realtime Database — это база данных, размещенная в облаке. Данные хранятся в формате JSON и синхронизируются в реальном времени с каждым подключенным клиентом. Когда вы создаете кроссплатформенные приложения с помощью наших Android, iOS и JavaScript SDK, все ваши клиенты совместно используют один экземпляр Realtime Database и автоматически получают обновления с новейшими данными.

Firebase Realtime Database доступна на всех платформах Apple, включая iOS, macOS, macOS Catalyst, tvOS и watchOS. Она недоступна для App Clips. Инструкции по настройке на этой странице ссылаются на iOS в конкретных примерах, но являются общими и работают для любой целевой платформы Apple.

Предпосылки

  1. Установите Firebase SDK .
  2. Добавьте свое приложение в проект Firebase в консоли Firebase .

Создать базу данных

  1. Перейдите в раздел Realtime Database консоли Firebase . Вам будет предложено выбрать существующий проект Firebase. Следуйте рабочему процессу создания базы данных.

  2. Выберите начальный режим для Firebase Security Rules :

    Тестовый режим

    Хорошо подходит для начала работы с библиотеками мобильных и веб-клиентов, но позволяет любому читать и перезаписывать ваши данные. После тестирования обязательно ознакомьтесь с разделом Understand Firebase Realtime Database Rules .

    Чтобы начать работу с веб-, Apple или Android SDK, выберите тестовый режим.

    Заблокированный режим

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

  3. Выберите место для базы данных.

    В зависимости от местоположения базы данных URL-адрес новой базы данных будет иметь одну из следующих форм:

    • DATABASE_NAME .firebaseio.com (для баз данных в us-central1 )

    • DATABASE_NAME . REGION .firebasedatabase.app (для баз данных во всех других местах)

  4. Нажмите Готово .

При включении Realtime Database также включается API в Cloud API Manager .

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

Используйте Swift Package Manager для установки и управления зависимостями Firebase.

  1. В Xcode откройте проект приложения и перейдите в меню Файл > Добавить пакеты .
  2. При появлении соответствующего запроса добавьте репозиторий Firebase Apple platform SDK:
  3.   https://github.com/firebase/firebase-ios-sdk.git
  4. Выберите библиотеку Realtime Database .
  5. Добавьте флаг -ObjC в раздел «Другие флаги компоновщика» настроек сборки вашей цели.
  6. По завершении Xcode автоматически начнет разрешать и загружать ваши зависимости в фоновом режиме.

Настройка Realtime Database Security Rules

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

Настройка Firebase Realtime Database

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

  1. Импортируйте модуль FirebaseCore в ваш UIApplicationDelegate , а также любые другие модули Firebase, которые использует ваш делегат приложения. Например, чтобы использовать Cloud Firestore и Authentication :

    SwiftUI

    import SwiftUI
    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Быстрый

    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Objective-C

    @import FirebaseCore;
    @import FirebaseFirestore;
    @import FirebaseAuth;
    // ...
          
  2. Настройте общий экземпляр FirebaseApp в методе делегата приложения application application(_:didFinishLaunchingWithOptions:) :

    SwiftUI

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    Быстрый

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    Objective-C

    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. Если вы используете SwiftUI, вы должны создать делегат приложения и прикрепить его к структуре App через UIApplicationDelegateAdaptor или NSApplicationDelegateAdaptor . Вы также должны отключить swizzling делегата приложения. Для получения дополнительной информации см. инструкции SwiftUI .

    SwiftUI

    @main
    struct YourApp: App {
      // register app delegate for Firebase setup
      @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate
    
      var body: some Scene {
        WindowGroup {
          NavigationView {
            ContentView()
          }
        }
      }
    }
          
  4. Создайте ссылку на свою базу данных и укажите место, куда вы хотите производить запись.

    Быстрый

    Примечание: этот продукт Firebase недоступен для целевой платформы App Clip.
    var ref: DatabaseReference!
    
    ref = Database.database().reference()

    Objective-C

    Примечание: этот продукт Firebase недоступен для целевой платформы App Clip.
    @property (strong, nonatomic) FIRDatabaseReference *ref;
    
    self.ref = [[FIRDatabase database] reference];

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