Apple 平台上的安裝和設置

Firebase 實時數據庫是一個雲託管的數據庫。數據以 JSON 格式存儲並實時同步到每個連接的客戶端。當您使用我們的 Android、iOS 和 JavaScript SDK 構建跨平台應用程序時,您的所有客戶端共享一個實時數據庫實例並自動接收包含最新數據的更新。

Firebase 實時數據庫適用於所有 Apple 平台,包括 iOS、macOS、macOS Catalyst、tvOS 和 watchOS。它不適用於輕 App。本頁中的設置說明在特定示例中引用了 iOS,但它們是通用的,適用於任何 Apple 平台目標。

先決條件

  1. 安裝 Firebase SDK
  2. Firebase 控制台中將您的應用程序添加到您的 Firebase 項目。

創建數據庫

  1. 導航到Firebase 控制台實時數據庫部分。系統會提示您選擇一個現有的 Firebase 項目。遵循數據庫創建工作流程。

  2. 為您的 Firebase 安全規則選擇啟動模式:

    測試模式

    適合開始使用移動和 Web 客戶端庫,但允許任何人讀取和覆蓋您的數據。測試後,請務必查看了解 Firebase 實時數據庫規則部分。

    要開始使用 Web、Apple 或 Android SDK,請選擇測試模式。

    鎖定模式

    拒絕來自移動和 Web 客戶端的所有讀取和寫入。經過身份驗證的應用程序服務器仍然可以訪問您的數據庫。

  3. 選擇數據庫的位置。

    根據數據庫的位置,新數據庫的 URL 將採用以下形式之一:

    • DATABASE_NAME .firebaseio.com (對於us-central1中的數據庫)

    • DATABASE_NAME . REGION .firebasedatabase.app (對於所有其他位置的數據庫)

  4. 單擊完成

當您啟用實時數據庫時,它還會啟用Cloud API Manager中的 API。

將 Firebase 實時數據庫添加到您的應用

使用 Swift Package Manager 安裝和管理 Firebase 依賴項。

  1. 在 Xcode 中,打開您的應用程序項目,導航至File > Add Packages
  2. 出現提示時,添加 Firebase Apple 平台 SDK 存儲庫:
  3.   https://github.com/firebase/firebase-ios-sdk
  4. 選擇實時數據庫庫。
  5. 完成後,Xcode 將自動開始在後台解析和下載您的依賴項。

配置實時數據庫安全規則

實時數據庫提供了一種聲明性規則語言,允許您定義數據的結構、索引方式以及何時可以讀取和寫入數據。

設置 Firebase 實時數據庫

在創建或使用任何 Firebase 應用引用之前,您必須初始化 Firebase。如果您已經為另一個 Firebase 功能完成了此操作,則可以跳過此步驟。

  1. 在您的UIApplicationDelegate中導入FirebaseCore模塊,以及您的應用委託使用的任何其他Firebase 模塊。例如,要使用 Cloud Firestore 和身份驗證:

    斯威夫特用戶界面

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

    迅速

    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    目標-C

    @import FirebaseCore;
    @import FirebaseFirestore;
    @import FirebaseAuth;
    // ...
          
  2. 在您的應用委託的application(_:didFinishLaunchingWithOptions:)方法中配置一個FirebaseApp共享實例:

    斯威夫特用戶界面

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

    迅速

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

    目標-C

    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. 如果您使用的是 SwiftUI,則必須創建一個應用程序委託並通過UIApplicationDelegateAdaptorNSApplicationDelegateAdaptor將其附加到您的App結構。您還必須禁用應用委託調配。有關詳細信息,請參閱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()

    目標-C

    注意:此 Firebase 產品不適用於 App Clip 目標。
    @property (strong, nonatomic) FIRDatabaseReference *ref;
    
    self.ref = [[FIRDatabase database] reference];

下一步