将 Firebase 添加到您的 Apple 项目中

前提条件

  • 安装以下软件:

    • Xcode 14.1 或更高版本
  • 确保您的项目满足以下要求:

    • 您的项目的目标平台不得低于以下版本:
      • iOS 11
      • macOS 10.13
      • tvOS 12
      • watchOS 6
  • 设置一台 Apple 实体设备,或使用模拟器运行您的应用。

如果您还没有 Xcode 项目,只是想试用某一 Firebase 产品,可以下载一个我们的快速入门示例

第 1 步:创建 Firebase 项目

您需要先创建一个要关联到您的 Apple 应用的 Firebase 项目,然后才能将 Firebase 添加到该应用。如需详细了解 Firebase 项目,请访问了解 Firebase 项目

第 2 步:在 Firebase 中注册您的应用

如需在 Apple 应用中使用 Firebase,您需要在 Firebase 项目中注册您的应用。注册应用的过程通常称为将应用“添加”到项目中。

  1. 前往 Firebase 控制台

  2. 在项目概览页面的中心位置,点击 iOS+ 图标,启动设置工作流。

    如果您已向 Firebase 项目添加了应用,请点击添加应用以显示平台选项。

  3. 软件包 ID 字段中输入应用的软件包 ID。

  4. (可选)输入其他应用信息:应用别名App Store ID

  5. 点击注册应用

第 3 步:添加 Firebase 配置文件

  1. 点击下载 GoogleService-Info.plist,获取 Firebase Apple 平台配置文件 (GoogleService-Info.plist)。

  2. 将配置文件移至 Xcode 项目的根目录中。如果出现提示,请选择将配置文件添加到所有目标。

如果您的项目中有多个软件包 ID,则必须将每个软件包 ID 与 Firebase 控制台中的注册应用相关联,使每个应用都有自己的 GoogleService-Info.plist 文件。

第 4 步:将 Firebase SDK 添加到您的应用

使用 Swift Package Manager 安装和管理 Firebase 依赖项。

  1. 在 Xcode 中打开您的应用项目,依次点击 File(文件)> Add Packages(添加软件包)
  2. 出现提示时,添加 Firebase Apple 平台 SDK 代码库:
  3.   https://github.com/firebase/firebase-ios-sdk
  4. 选择要使用的 SDK 版本。
  5. 选择要使用的 Firebase 库。

    如果您的 Firebase 项目中启用了 Google Analytics,请务必添加 FirebaseAnalytics。对于没有 IDFA 收集功能的 Analytics,改为添加 FirebaseAnalyticsWithoutAdId

完成之后,Xcode 将会自动开始在后台解析和下载您的依赖项。

第 5 步:在您的应用中初始化 Firebase

最后一步是向您的应用添加初始化代码。您可能在向应用添加 Firebase 的过程中已经完成此步操作。如果您使用的是快速入门示例项目,则此步骤已完成。

  1. UIApplicationDelegate 中导入 FirebaseCore 模块,以及您的应用委托 (app delegate) 使用的所有其他 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;
    // ...
          
  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. 如果您添加了 Firebase SDK for Google Analytics,则可以运行您的应用,向 Firebase 控制台发送您已成功安装 Firebase 的验证信息。

大功告成!您可以跳至后续步骤了。

如果您在设置时遇到问题,请参阅 Apple 平台问题排查和常见问题解答

可用的库

本部分列出了 Apple 平台支持的 Firebase 产品。详细了解以下 Firebase Apple 平台库:

服务或产品 Pod SwiftPM 库 添加 Analytics?
AdMob pod 'Google-Mobile-Ads-SDK' 不适用
Analytics pod 'FirebaseAnalytics' FirebaseAnalytics
App Check pod 'FirebaseAppCheck' FirebaseAppCheck
App Distribution pod 'FirebaseAppDistribution' FirebaseAppDistribution
Authentication pod 'FirebaseAuth' FirebaseAuth
Cloud Firestore pod 'FirebaseFirestore' FirebaseFirestore
Cloud Functions for Firebase 客户端 SDK pod 'FirebaseFunctions' FirebaseFunctions
Cloud Messaging pod 'FirebaseMessaging' FirebaseMessaging
Cloud Storage pod 'FirebaseStorage' FirebaseStorage
Crashlytics pod 'FirebaseCrashlytics' FirebaseCrashlytics
Dynamic Links pod 'FirebaseDynamicLinks' FirebaseDynamicLinks
In-App Messaging pod 'FirebaseInAppMessaging' FirebaseInAppMessaging
(需要)
Firebase 安装 pod 'FirebaseInstallations' FirebaseInstallations
Firebase ML Custom Model API pod 'FirebaseMLModelDownloader' FirebaseMLModelDownloader
Performance Monitoring pod 'FirebasePerformance' FirebasePerformance
Realtime Database pod 'FirebaseDatabase' FirebaseDatabase
Remote Config pod 'FirebaseRemoteConfig' FirebaseRemoteConfig
Vertex AI for Firebase 不适用 FirebaseVertexAI-Preview

在不使用 Swift Package Manager 的情况下进行集成

如果不想使用 Swift Package Manager,您仍可通过使用 CocoaPods 或直接导入框架来利用 Firebase SDK。

CocoaPods

如需详细了解 CocoaPods 集成,请参阅我们的指南

框架

除了支持 iOS 平台外,该 zip 现在还包含 .xcframework 文件。如需了解详情,请参阅 GitHub 上的 Firebase Apple 平台 SDK 自述文件

  1. 下载框架 SDK zip。该文件约有 200MB,可能需要一些时间才能下载完成。

  2. 解压缩该文件,然后集成要包含在应用中的框架。

    您可在以下任一位置找到集成说明:

    如需了解框架版本或依赖项,请参阅下载的 zip 发行版中的 METADATA.md 文件。

  3. 在目标的 build 设置中,将 -ObjC 链接器标记添加到 Other Linker Settings 中。

后续步骤

了解 Firebase

将 Firebase 服务添加到您的应用: