前提条件
安装以下各项:
- Xcode 15.2 或更高版本
确保您的项目满足以下要求:
- 您的项目的目标平台不得低于以下版本:
- iOS 13
- macOS 10.15
- tvOS 13
- watchOS 7
- 您的项目的目标平台不得低于以下版本:
设置一台 Apple 实体设备,或使用模拟器运行您的应用。
您是要用 Cloud Messaging?
若要在 Apple 平台上使用 Cloud Messaging,需满足以下前提条件:
- 设置 Apple 实体设备。
- 获取您的 Apple 开发者账号的 Apple 推送通知身份验证密钥。
- 在 Xcode 中通过 App(应用)> Capabilities(功能)启用推送通知功能。
- 使用您的 Google 账号登录 Firebase。
如果您还没有 Xcode 项目,只是想试用某一 Firebase 产品,可以下载一个我们的快速入门示例。
第 1 步:创建 Firebase 项目
您需要先创建一个要关联到您的 Apple 应用的 Firebase 项目,然后才能将 Firebase 添加到该应用。如需详细了解 Firebase 项目,请访问了解 Firebase 项目。
创建 Firebase 项目
-
在 Firebase 控制台中,点击添加项目。
-
如需将 Firebase 资源添加到现有 Google Cloud 项目,请输入该项目的名称或从下拉菜单中选择该项目。
-
如需创建新项目,请输入要使用的项目名称。您也可以视需要修改项目名称下方显示的项目 ID。
-
-
如果看到相关提示,请查看并接受 Firebase 条款。
-
点击继续。
-
(可选)为您的项目设置 Google Analytics,以便在使用下列 Firebase 产品时能获得最佳体验:
选择现有的 Google Analytics 账号,或者创建一个新账号。
如果您选择创建一个新账号,请选择 Analytics 报告位置,然后接受项目的数据共享设置和 Google Analytics 条款。
-
点击创建项目(或者,如果您使用的是现有 Google Cloud 项目,则点击添加 Firebase)。
Firebase 会自动为您的 Firebase 项目预配资源。完成此过程后,您将进入 Firebase 控制台中该 Firebase 项目的概览页面。
第 2 步:在 Firebase 中注册您的应用
如需在 Apple 应用中使用 Firebase,您需要在 Firebase 项目中注册您的应用。注册应用的过程通常称为将应用“添加”到项目中。
前往 Firebase 控制台。
在项目概览页面的中心位置,点击 iOS+ 图标,启动设置工作流。
如果您已向 Firebase 项目添加了应用,请点击添加应用以显示平台选项。
在软件包 ID 字段中输入应用的软件包 ID。
什么是软件包 ID,在哪里可以找到它?
软件包 ID 是应用在 Apple 生态系统中的唯一标识符。
如何找到您的软件包 ID:在 Xcode 中打开您的项目,在项目导航器中选择顶级应用,然后选择 General(常规)标签页。
Bundle Identifier(软件包标识符)字段的值就是软件包 ID(例如
com.yourcompany.yourproject
)。请注意,软件包 ID 值区分大小写,此 Firebase 应用在您的 Firebase 项目中注册后,该值便无法更改。
(可选)输入其他应用信息:应用别名和 App Store ID。
应用别名和 App Store ID 在 Firebase 中的作用是什么?
应用别名:方便内部使用的标识符,只有您能在 Firebase 控制台中看到
App Store ID:Firebase Dynamic Links 使用该 ID 将用户重定向到 App Store 页面,Google Analytics 则用它将转化事件导入 Google Ads。如果您的应用还没有 App Store ID,您可以稍后在项目设置中添加此 ID。
点击注册应用。
第 3 步:添加 Firebase 配置文件
点击下载 GoogleService-Info.plist,获取 Firebase Apple 平台配置文件 (
GoogleService-Info.plist
)。关于此配置文件,您需要了解哪些信息?
此 Firebase 配置文件包含项目的唯一但非机密的标识符。如需详细了解此配置文件,请访问了解 Firebase 项目。
您可以随时再次下载 Firebase 配置文件。
请确保该配置文件名未附加其他字符,如
(2)
。
将配置文件移至 Xcode 项目的根目录中。如果出现提示,请选择将配置文件添加到所有目标。
如果您的项目中有多个软件包 ID,必须将每个软件包 ID 与 Firebase 控制台中的注册应用相关联,使每个应用都有自己的 GoogleService-Info.plist
文件。
第 4 步:将 Firebase SDK 添加到您的应用
使用 Swift Package Manager 安装和管理 Firebase 依赖项。
- 在 Xcode 中打开您的应用项目,依次点击 File(文件)> Add Packages(添加软件包)。
- 出现提示时,添加 Firebase Apple 平台 SDK 代码库:
- 选择要使用的 SDK 版本。
选择要使用的 Firebase 库。
如果您的 Firebase 项目中启用了 Google Analytics,请务必添加
FirebaseAnalytics
。对于没有 IDFA 收集功能的 Analytics,改为添加FirebaseAnalyticsWithoutAdId
。
https://github.com/firebase/firebase-ios-sdk
完成之后,Xcode 将会自动开始在后台解析和下载您的依赖项。
第 5 步:在您的应用中初始化 Firebase
最后一步是向您的应用添加初始化代码。您可能在向应用添加 Firebase 的过程中已经完成此步操作。如果您使用的是快速入门示例项目,则此步骤已完成。
- 在
UIApplicationDelegate
中导入FirebaseCore
模块,以及您的应用委托 (app delegate) 使用的所有其他 Firebase 模块。 例如,使用 Cloud Firestore 和 Authentication:import SwiftUI import FirebaseCore import FirebaseFirestore import FirebaseAuth // ...
import FirebaseCore import FirebaseFirestore import FirebaseAuth // ...
@import FirebaseCore; @import FirebaseFirestore; @import FirebaseAuth; // ...
- 在应用委托的
application(_:didFinishLaunchingWithOptions:)
方法中配置一个FirebaseApp
共享实例:// Use Firebase library to configure APIs FirebaseApp.configure()
// Use Firebase library to configure APIs FirebaseApp.configure()
// Use Firebase library to configure APIs [FIRApp configure];
- 如果您使用的是 SwiftUI,则必须创建应用委托并通过
UIApplicationDelegateAdaptor
或NSApplicationDelegateAdaptor
将其附加到App
结构体。您还必须停用应用委托调配。如需了解详情,请参阅 SwiftUI 说明。@main struct YourApp: App { // register app delegate for Firebase setup @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate var body: some Scene { WindowGroup { NavigationView { ContentView() } } } }
- 如果您添加了 Firebase SDK for Google Analytics,则可以运行您的应用,向 Firebase 控制台发送您已成功安装 Firebase 的验证信息。
大功告成!您可以跳至后续步骤了。
如果您在设置时遇到问题,请参阅 Apple 平台问题排查和常见问题解答。
可用的库
本部分列出了 Apple 平台支持的 Firebase 产品。详细了解以下 Firebase Apple 平台库:
Firebase Apple 平台 SDK GitHub 代码库
服务或产品 | Pod | SwiftPM 库 | Google Analytics > 添加 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 Client 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 自定义模型 API | pod 'FirebaseMLModelDownloader' |
FirebaseMLModelDownloader |
|
Performance Monitoring | pod 'FirebasePerformance' |
FirebasePerformance |
|
Realtime Database | pod 'FirebaseDatabase' |
FirebaseDatabase |
|
Remote Config | pod 'FirebaseRemoteConfig' |
FirebaseRemoteConfig |
|
Vertex AI in Firebase | pod 'FirebaseVertexAI' |
FirebaseVertexAI |
在不使用 Swift Package Manager 的情况下进行集成
如果不想使用 Swift Package Manager,您仍可通过使用 CocoaPods 或直接导入框架来利用 Firebase SDK。
CocoaPods
如需详细了解 CocoaPods 集成,请参阅我们的指南。
框架
除了支持 iOS 平台外,该 zip 现在还包含 .xcframework
文件。如需了解详情,请参阅 GitHub 上的 Firebase Apple 平台 SDK 自述文件。
下载框架 SDK zip。该文件约有 200MB,可能需要一些时间才能下载完成。
解压缩该文件,然后集成要包含在应用中的框架。
您可在以下任一位置找到集成说明:
- 在 Firebase iOS SDK GitHub 代码库中。
- 在下载的 zip 发行版的
README.md
文件中。
如需了解框架版本或依赖项,请参阅下载的 zip 发行版中的
METADATA.md
文件。在目标的 build 设置中,将
-ObjC
链接器标记添加到Other Linker Settings
中。
后续步骤
了解 Firebase:
访问了解 Firebase 项目,详细了解 Firebase 项目及其最佳实践。
探索 Firebase 应用示例。
借助 Firebase iOS Codelab 获得实际上手经验。
浏览 GitHub 中的开源代码。
准备启动您的应用:
- 在 Google Cloud 控制台中为您的项目设置预算提醒。
- 在 Firebase 控制台中监控“用量和结算”信息中心,以全面了解您的项目在多个 Firebase 服务中的用量信息。
- 查看 Firebase 发布核对清单。
在使用 Firebase 和 Apple 项目时遇到问题? 请参阅 Apple 平台问题排查和常见问题解答。
将 Firebase 服务添加到您的应用:
使用 Analytics 深入分析用户行为。
使用 Authentication 设置用户身份验证。
使用 Cloud Firestore 或 Realtime Database 存储数据(如用户信息)。
使用 Cloud Storage 存储文件,如照片和视频。
使用 Cloud Functions 触发在安全环境中运行的后端代码。
使用 Cloud Messaging 发送通知。
使用 Crashlytics 确定应用崩溃的时间和原因。