安裝及設定 Apple 平台

Firebase 即時資料庫是雲端託管的資料庫,資料會以 JSON 格式儲存,並即時同步至每個連結的用戶端。使用 Android、iOS 和 JavaScript SDK 建構跨平台應用程式時,所有用戶端會共用一個即時資料庫執行個體,並自動接收包含最新資料的更新。

Firebase 即時資料庫適用於所有 Apple 平台,包括 iOS、macOS、macOS Catalyst、tvOS 和 watchOS。但 App Clips 不支援這項功能。 本頁的設定操作說明提供了幾個範例以 iOS 為例,但這些說明都很通用,且適用於任何 Apple 平台目標。

先備知識

  1. 安裝 Firebase SDK
  2. Firebase 主控台中,將應用程式加入 Firebase 專案。

建立資料庫

  1. 前往 Firebase 控制台的「Realtime Database」(即時資料庫) 部分。系統會提示您選取現有的 Firebase 專案。按照資料庫建立工作流程操作。

  2. 選取 Firebase 安全性規則的啟動模式:

    測試模式

    很適合開始使用行動和網路用戶端程式庫,但允許任何人讀取及覆寫您的資料。測試完成後,請務必查看「瞭解 Firebase 即時資料庫規則」一節。

    如要開始使用網頁、Apple 或 Android SDK,請選取「testmode」。

    鎖定模式

    拒絕來自行動裝置和網路用戶端的所有讀寫作業。 但經驗證的應用程式伺服器仍然可以存取您的資料庫。

  3. 選擇資料庫的位置。

    根據資料庫的位置,新資料庫的網址會採用下列其中一種格式:

    • 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.git
  4. 選擇即時資料庫資料庫。
  5. 在目標建構設定的「Other Linker Flags」部分中新增 -ObjC 標記。
  6. 完成後,Xcode 會自動開始在背景解析並下載依附元件。

設定即時資料庫安全性規則

即時資料庫提供宣告規則語言,可讓您定義資料的結構、建立索引的方式,以及讀取和寫入資料的時間。

設定 Firebase 即時資料庫

建立或使用任何 Firebase 應用程式參照之前,您必須先初始化 Firebase。如果您已經針對其他 Firebase 功能執行上述操作,可以略過這個步驟。

  1. FirebaseCore 模組匯入 UIApplicationDelegate,以及應用程式委派使用的任何其他 Firebase 模組。例如,如要使用 Cloud Firestore 和驗證:

    SwiftUI

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

    Swift

    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Objective-C

    @import FirebaseCore;
    @import FirebaseFirestore;
    @import FirebaseAuth;
    // ...
          
  2. 在應用程式委派的 application(_:didFinishLaunchingWithOptions:) 方法中設定 FirebaseApp 共用例項:

    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];
  3. 如果您使用 SwiftUI,則必須建立應用程式委派,並透過 UIApplicationDelegateAdaptorNSApplicationDelegateAdaptor 將其附加至 App 結構體。您也必須停用應用程式委派功能切換功能。詳情請參閱 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. 建立資料庫參照,並指定要寫入的位置。

    Swift

    注意:這項 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];

後續步驟