Firebase Apple SDK:为Swift应用集成Firestore与Crashlytics等服务
给Apple应用接入认证、Firestore和崩溃监控的一套Firebase SDK,支持Swift但不包含开源Analytics。
GitHub firebase/firebase-ios-sdk 更新 2026-10-01 分支 main 星标 6.8K 分叉 1.8K
Swift Objective-C Apple平台 FirebaseFirestore FirebaseCrashlytics

🧭 决策指南

适合,如果你

  • 你在开发iOS、macOS或tvOS应用,需要FirebaseAuth、FirebaseFirestore或FirebaseCrashlytics。
    README 的“Supported Firebase Products”和“Building with Firebase on Apple platforms”章节列出了这些产品与平台。
  • 你希望用Swift Package Manager安装Firebase,而不是依赖CocoaPods的新版本发布。
    README 的“Swift Package Manager installation”章节提供了Swift Package Manager安装入口,并说明CocoaPods将在2026年10月停止发布新版本。
  • 你要试用Firebase AI Logic的Gemini Foundation Models framework适配器。
    README顶部的“Preview Release”说明该适配器目前可用,但处于preview状态。

不适合,如果你

  • 你的交付流程要求在2026年10月之后继续获取CocoaPods发布的新Firebase版本。
    README的CocoaPods警告明确说明2026年10月后不再发布Firebase Apple SDK新版本。
  • 你的watchOS应用依赖Firebase Analytics初始化或Crashlytics记录SwiftUI崩溃。
    README说明watchOS不受官方支持;Analytics通信检查不可用,Crashlytics不记录mach exceptions,而SwiftUI崩溃属于该类型。
  • 你需要在生产环境使用FirebaseCombineSwift。
    README的“Combine”章节明确写明该模块仍在开发,尚不支持生产环境。

前置条件

  • 目标是Apple平台应用;README列出的官方beta平台包括macOS、Catalyst和tvOS。
  • 安装方式可使用Swift Package Manager;README将安装说明链接到Firebase get started documentation。
  • 若使用CocoaPods,需注意README声明2026年10月后不再发布Firebase Apple SDK新版本。
  • 若使用visionOS上的FirebaseFirestore与Swift Package Manager,README要求使用source distribution。
  • 若使用watchOS,README明确标注为community supported而非officially supported。

第一步命令(README 原文)

pod 'FirebaseCore', :git => 'https://github.com/firebase/firebase-ios-sdk.git', :branch => 'main'

要注意

  • visionOS上的FirebaseFirestore通过Swift Package Manager需要source distribution。
    README的“visionOS”章节明确说明该要求,并给出FIREBASE_SOURCE_FIRESTORE环境变量方式。
  • watchOS控制台中的“Checking if the app has communicated”依赖FirebaseAnalytics且不会工作。
    README的“watchOS”章节说明该检查依赖FirebaseAnalytics,并可忽略后继续。
  • Firebase Analytics不在本仓库开源范围内,仅以预编译二进制随Swift Package Manager或CocoaPods提供。
    README的“Supported Firebase Products”章节说明Firebase Analytics不是开源组件,但安装时包含预编译二进制。

替代方案

  • Swift Package Manager:需要在2026年10月之后获取Firebase新版本,或希望使用README列出的推荐安装路径。
    Swift Package Manager installation
  • CocoaPods:已有CocoaPods项目且只需使用现有Firebase版本;README说明既有版本仍可用、现有安装仍能运行。
    CocoaPods installation
  • FirebaseCombineSwift:只有在明确接受其仍处于开发中且不能用于生产环境时,才考虑这条Combine集成路径。
    Combine

材料未说明

  • README未给出最低iOS、macOS、tvOS、Swift或Xcode版本。
  • README未给出FirebaseFirestore、FirebaseAuth或FirebaseCrashlytics的运行时性能与资源开销数据。
  • README未在材料中列出完整的visionOS、watchOS产品支持矩阵细节。
  • README未说明Firebase AI Logic Gemini Foundation Models framework适配器的preview限制、稳定发布时间或兼容版本。
  • README未说明Firebase Apple 12.19.2对应的最低操作系统与依赖版本。

💡 深度解析

6
不适合 我维护的是一个 Objective-C 老应用,目前通过 CocoaPods 集成 Firebase;如果还要在 2026 年 10 月之后获得新的 Firebase Apple SDK 版本,我是否应该继续沿用 CocoaPods?
适合读者: 维护 Objective-C 老应用、目前通过 CocoaPods 集成 Firebase、需要持续获得 2026 年后的 SDK 更新的移动端维护者

不适合继续把 CocoaPods 作为获取新版本的长期路径,因为 README 明确规定 2026 年 10 月后不再发布新的 Firebase Apple SDK CocoaPods 版本。

  • README 顶部警告写明:“New versions of the Firebase Apple SDK will no longer be published to CocoaPods after October 2026”。
  • 现有 CocoaPods 版本仍可用,已有安装不会立即失效,因此短期维护旧版 Objective-C 应用仍有过渡空间。
  • README 同时列出 Swift Package Manager、GitHub 源码和实验性的 Carthage;Objective-C 应用并不意味着只能使用 CocoaPods。
  • 如果团队依赖预编译二进制、脚本或特定 Pod 构建行为,迁移时需要验证链接设置、CI 和 Firebase Analytics 的二进制集成。

结论是:可继续运行现有 CocoaPods 集成,但需要为持续升级规划迁移,而不是把 CocoaPods 当作 2026 年 10 月后的新版本渠道。

  • README:顶部 WARNING;“New versions of the Firebase Apple SDK will no longer be published to CocoaPods after October 2026”
  • README:CocoaPods installation;“Existing CocoaPods versions will remain available and installations will remain functional”
  • README:Installation;列出 Swift Package Manager、CocoaPods、Install from GitHub、Experimental Carthage
材料未说明:该 Objective-C 工程当前的最低部署版本、Pod 依赖锁定方式和 CI 构建脚本;团队是否使用 Firebase Analytics 或其他预编译二进制依赖
不适合 我正在为独立 watchOS App 接入 Firebase Crashlytics,并希望线上完整捕获 SwiftUI 崩溃和 signal crash;这个项目是否满足我的诊断要求?
适合读者: 为 watchOS 独立 App 集成 Firebase Crashlytics 的 Apple 开发者,需要判断崩溃数据是否足以支撑线上诊断

不适合把它当作完整的 watchOS 崩溃诊断方案,因为 README 明确说明 watchOS 的 Crashlytics 支持有限,mach exception 和 signal crash 不会被记录。

  • README 的 watchOS 章节写明:“watchOS is not officially supported by Firebase”。
  • Additional Crashlytics notes for watchOS 进一步说明,由于 watchOS 限制,mach exceptions 和 signal crashes 不会被记录。
  • README 特别指出 SwiftUI 崩溃会以 mach exception 产生,因此这类崩溃也不会被记录。
  • 虽然许多 SDK 能在 watchOS 编译、运行单元测试,仓库仍提醒社区贡献的改动可能导致 SDK 在该平台上不再按预期工作。

所以,它可以用于有限的实验或基础观测,但不满足“完整捕获 SwiftUI 和 signal crash”的明确要求。README 没有提供另一套 watchOS Crashlytics 补偿机制。

  • README:watchOS;“watchOS is not officially supported by Firebase”
  • README:Additional Crashlytics notes for watchOS;“mach exceptions and signal crashes are not recorded”
  • README:Additional Crashlytics notes for watchOS;“Crashes in SwiftUI are generated as mach exceptions, so will not be recorded”
材料未说明:未记录的 watchOS 崩溃类型是否可以通过应用自身日志或其他监控系统补足;当前目标 watchOS 版本和具体 Crashlytics SDK 版本的实际行为
不适合 我正在开发 visionOS 应用,并希望通过 Swift Package Manager 使用 Firestore;由于需要源码分发,我是否可以直接按普通 Apple 项目的方式打开 Xcode?
适合读者: 计划在 visionOS 应用中通过 Swift Package Manager 使用 Firestore、同时需要从源码分发切换回二进制分发的 Apple 平台工程师

不适合直接按普通方式打开 Xcode,因为 README 明确要求 visionOS 下通过 Swift Package Manager 使用 Firestore 源码分发时设置 FIREBASE_SOURCE_FIRESTORE 环境变量。

  • README 的 visionOS 章节说明:Firestore via Swift Package Manager 必须使用 source distribution。
  • README 给出了完整命令:open --env FIREBASE_SOURCE_FIRESTORE /path/to/project.xcodeproj,并要求先退出 Xcode。
  • 如果希望恢复 Firestore 的 binary distribution,README 要求退出 Xcode 后,不设置该环境变量、按普通方式重新打开 Xcode。
  • README 同时说明 visionOS 和 watchOS 存在产品支持缺口,因此不能假设所有 Firebase 模块在 visionOS 上行为一致。

这意味着构建方式本身就是平台条件的一部分。是否适合采用还取决于团队能否接受源码分发带来的构建时间、依赖解析和 CI 配置差异;README 没有量化这些影响。

  • README:visionOS;“Firestore via Swift Package Manager where it is required to use the source distribution”
  • README:visionOS;“open --env FIREBASE_SOURCE_FIRESTORE /path/to/project.xcodeproj”
  • README:visionOS;恢复 binary distribution 时“不设置 environment variable”并正常打开 Xcode
open --env FIREBASE_SOURCE_FIRESTORE /path/to/project.xcodeproj
材料未说明:当前 visionOS 版本、Firestore SDK 版本以及该工程的 CI 是否支持源码分发;源码分发相较预编译二进制对构建时间、缓存和产物大小的实际影响
适合 我正在用 Swift 开发一个 iOS 应用,需要同时实现用户认证、Cloud Firestore 数据访问、Firebase Cloud Messaging 推送和 Crashlytics 崩溃监控;我是否应该采用 firebase-ios-sdk,而不是分别集成多套服务 SDK?
适合读者: 使用 Swift 开发 iOS 应用、需要同时接入认证、Cloud Firestore、推送和崩溃监控的中小型产品团队

适合,因为仓库正好提供这些能力的模块化 Apple SDK,并支持 Swift 应用。

  • README 的 Supported Firebase Products 同时列出 FirebaseAuth、FirebaseFirestore、FirebaseMessaging 和 FirebaseCrashlytics,能够覆盖认证、云端数据、推送与崩溃诊断。
  • README 的 Installation 说明支持 Swift Package Manager,并建议 Swift 开发者优先使用带 Swift 后缀的库,以获得更好的 Swift 使用体验。
  • 项目采用独立产品模块,应用可以按需引入,而不是必须安装所有 Firebase 能力。
  • 这不是完整后端替代品:Firestore 的安全规则、认证权限、APNs 配置、隐私同意和生产环境项目隔离仍需团队自行完成。

因此,它适合希望减少客户端网络层和监控基础设施开发量的 iOS 团队,但不能把 SDK 接入误认为后端安全配置已经完成。

  • README:Supported Firebase Products;列出 Firebase AI Logic、Authentication、Cloud Firestore、Cloud Messaging、Crashlytics 等
  • README:Swift Package Manager installation;“Where available, it's recommended to install libraries with a Swift suffix”
  • 项目洞察:模块化程度较高,开发者可以按需引入 FirebaseAuth、FirebaseFirestore、FirebaseMessaging 等组件
材料未说明:该应用的 Firestore 数据模型、访问量、延迟要求和计费预算;具体需要支持的最低 iOS 版本以及 APNs 证书或密钥配置
视情况 我需要把 Swift/Objective-C 应用同时部署到 macOS、Mac Catalyst 和 tvOS,并复用 Firebase Authentication、Firestore 和 Messaging;firebase-ios-sdk 是否能作为正式生产依赖?
适合读者: 需要将同一套 Apple 应用部署到 macOS、Mac Catalyst 和 tvOS,并希望复用认证、数据库与推送模块的跨平台团队

视情况,因为这些平台有官方支持,但 README 将 macOS、Catalyst 和 tvOS 明确标为 official beta support,而不是稳定的正式支持级别。

  • README 的 Building with Firebase on Apple platforms 写明:“Firebase provides official beta support for macOS, Catalyst, and tvOS”。
  • README 同时指出大多数 Firebase 产品可跨 Apple 平台使用,但仍存在平台和产品级缺口,必须查看当前 support matrix。
  • Authentication、Firestore 和 Messaging 都属于仓库列出的开源产品,但 README 没有保证它们在三个目标平台上具有完全一致的能力或行为。
  • 如果应用还要扩展到 visionOS 或 watchOS,风险会进一步增加,因为这两个平台分别属于存在缺口或 community supported 的范围。

因此,若团队能接受 beta 支持并针对每个平台验证核心流程,可以采用;若发布要求是所有平台都具备同等稳定保证,则不应直接视为无条件适合。

  • README:Building with Firebase on Apple platforms;“Firebase provides official beta support for macOS, Catalyst, and tvOS”
  • README:Building with Firebase on Apple platforms;“There are still a few gaps, especially on visionOS and watchOS”
  • README:Supported Firebase Products;列出 Authentication、Cloud Firestore、Cloud Messaging
材料未说明:目标平台上每个 Firebase 模块的当前支持矩阵和最低系统版本;tvOS 是否实际需要推送、后台任务或其他受平台限制的能力
视情况 我正在用 Swift 开发 iOS 应用,想接入 Firebase AI Logic 的 Gemini 能力,并尝试 Apple Foundation Models framework adapter;这个仓库是否适合承载关键生产流程?
适合读者: 使用 Swift 开发 iOS 应用、准备把 Gemini 能力接入用户功能流程,并考虑 Apple Foundation Models framework adapter 的产品团队

视情况:Firebase AI Logic 适合作为 Gemini 的 Apple 集成入口,但 README 明确把 Gemini Foundation Models framework adapter 标为 preview,不适合未经验证就承载不可替代的关键生产流程。

  • Supported Firebase Products 列出 Firebase AI Logic,并将模块名标为 FirebaseAI,说明该能力属于仓库范围。
  • README 顶部的 Preview Release 写明该 adapter “is now available in preview”,并要求通过专门文档开始使用。
  • 项目洞察指出 AI Logic 属于新增能力,而 Foundation Models adapter 仍是预览特性,API、行为和平台支持可能变化。
  • Firebase AI Logic 仍依赖 Firebase 云端服务、项目配置、配额和网络条件;README 没有给出模型延迟、配额、区域可用性或成本保证。

因此,面向可降级的 AI 功能可以考虑;若 AI 结果直接决定核心交易、权限或不可逆操作,则现有 README 证据不足以支持无条件采用。

  • README:Supported Firebase Products;“Firebase AI Logic (FirebaseAI)”
  • README:Preview Release;“Firebase AI Logic's Gemini Foundation Models framework adapter is now available in preview”
  • 项目洞察:Foundation Models framework adapter 目前属于预览能力,不应视为成熟稳定特性
材料未说明:目标平台、最低系统版本以及 adapter 当前实际支持的模型和 API;项目所需的模型延迟、配额、区域可用性、数据处理方式和成本上限

✨ 核心亮点

  • 覆盖FirebaseAuth、Firestore、Crashlytics等13项服务
  • 支持Swift Package Manager与GitHub源码安装
  • Firebase AI Logic的Gemini适配器已进入Preview
  • Firebase Apple 12.19.2之后CocoaPods将停止新版本

🔧 工程化

  • 通过FirebaseAuth、FirebaseFirestore提供认证与数据库能力
  • 用FirebaseMessaging、FirebaseCrashlytics支持消息与崩溃监控
  • FirebaseAI提供Gemini Foundation Models framework适配器
  • 支持Swift Package Manager、CocoaPods和GitHub分支安装

⚠️ 风险

  • 2026年10月后CocoaPods不再发布Firebase新版本
  • watchOS未获官方支持,Crashlytics不记录mach异常
  • FirebaseCombineSwift仍在开发,不能用于生产环境
  • visionOS与watchOS仍存在部分Firebase产品缺口

👥 适合谁?

  • 使用Swift或Objective-C开发iOS、macOS、tvOS应用的团队
  • 需要Firestore、Authentication或Remote Config的Apple应用
  • 希望通过Swift Package Manager集成Firebase服务的项目