
Firebase开源SDK为Apple平台提供全面开发支持
firebase-ios-sdk是一个开源仓库,包含Firebase为Apple平台开发的SDK源代码。该SDK支持iOS、macOS和tvOS等平台,提供身份验证、实时数据库、云存储等多项功能。开发者可通过CocoaPods或Swift Package Manager安装,使用Swift或Objective-C接口快速集成Firebase服务。值得注意的是,该仓库不包含FirebaseAnalytics相关代码。
本仓库包含除 FirebaseAnalytics 外所有 Apple 平台 Firebase SDK 的源代码。
Firebase 是一个应用开发平台,提供工具帮助你构建、发展和变现你的应用。关于 Firebase 的更多信息可以在官方 Firebase 网站上找到。
请参阅以下小节了解不同安装方法的详细信息。在可用的情况下,建议安装带有 Swift 后缀的库,以获得在 Swift 中编写应用程序时的最佳体验。
有关标准 pod 安装的说明,请访问: https://firebase.google.com/docs/ios/setup。
有关 Swift 包管理器 支持的说明可以在 SwiftPackageManager.md Markdown 文件中找到。
这些说明可用于访问 Firebase 仓库的其他分支、标签或提交。
有关覆盖 pod 源位置的说明和选项,请参阅 Podfile 语法参考。
所有官方版本都在此仓库中标记并可通过 CocoaPods 获得。要访问本地源快照或未发布的分支,请使用如下 Podfile 指令:
要通过分支访问 FirebaseFirestore:
pod 'FirebaseCore', :git => 'https://github.com/firebase/firebase-ios-sdk.git', :branch => 'main' pod 'FirebaseFirestore', :git => 'https://github.com/firebase/firebase-ios-sdk.git', :branch => 'main'
要通过已检出版本的 firebase-ios-sdk 仓库访问 FirebaseMessaging:
pod 'FirebaseCore', :path => '/path/to/firebase-ios-sdk' pod 'FirebaseMessaging', :path => '/path/to/firebase-ios-sdk'
有关实验性 Carthage 分发的说明可以在 Carthage.md 中找到。
有关在框架或库中使用 Firebase 的详细信息,请参阅 firebase_in_libraries.md。
要在此仓库中开发 Firebase 软件,请确保你至少具有以下软件:
CocoaPods 仍然是规范的开发方式,但现在仓库的大部分内容都支持使用 Swift 包管理器进行开发。
安装以下内容:
对于你想开发的 pod:
pod gen Firebase{name here}.podspec --local-sources=./ --auto-open --platforms=ios
注意:如果 CocoaPods 缓存过期,你可能需要在 pod gen 命令之前运行 pod repo update。
注意:将 --platforms 选项设置为 macos 或 tvos 以进行这些平台的开发/测试。自 10.2 版本以来,Xcode 无法正确处理多平台 CocoaPods 工作区。
Firestore 有一个独立的 Xcode 项目。请参阅 Firestore/README Markdown 文件。
pod gen {name here}.podspec --local-sources=./ --auto-open --platforms=ios或者,禁用每个目标的签名:
+添加用户定义设置CODE_SIGNING_REQUIRED 设置,值为 NO./scripts/setup_spm_tests.shopen Package.swift 或在 Finder 中双击 Package.swift。有关详细信息,请参阅 AddNewPod Markdown 文件。
有关管理头文件和导入的信息,请参阅 HeadersImports Markdown 文件。
为确保代码格式一致,在创建拉取请求(PR)之前,请运行脚本 ./scripts/check.sh。
GitHub Actions 将验证任何代码更改是否以符合样式的方式完成。安装 clang-format 和 mint:
brew install clang-format@18 brew install mint
选择一个方案并按 Command-u 键构建组件并运行其单元测试。
要运行示例应用程序和集成测试,你需要一个有效的 GoogleService-Info.plist 文件。Firebase Xcode 项目包含没有真实值的虚拟 plist 文件,但可以用真实的 plist 文件替换它们。要获取你自己的 GoogleService-Info.plist 文件:
com.google.Database-Example)创建一个新的 Firebase 应用程序GoogleService-Info.plist 并将其添加到 Xcode 项目中。有关覆盖率报告生成说明,请参阅 scripts/code_coverage_report/README Markdown 文件。
请参阅下面的章节了解这些组件的任何特殊说明。
对于特定的 Firebase Auth 开发,请参阅 Auth Sample README 了解有关构建和运行 FirebaseAuth pod 以及各种示例和测试的说明。
Firebase Database 集成测试可以针对本地运行的 Database 模拟器或生产实例运行。
要针对本地模拟器实例运行,请在运行集成测试之前调用 ./scripts/run_database_emulator.sh start。
要在生产实例上运行,请提供有效的 GoogleServices-Info.plist 并将其复制到 FirebaseDatabase/Tests/Resources/GoogleService-Info.plist。在运行测试时,您的安全规则必须设置为公开。
Firebase 动态链接已弃用,不应在新项目中使用。该服务将于 2025 年 8 月 25 日关闭。
请查看我们的动态链接弃用常见问题文档以获取更多指导。
对于特定的 Firebase 性能监控开发,请参阅性能 README了解构建 SDK 的说明,以及性能测试应用 README了解将性能集成到开发测试应用的说明。
要运行存储集成测试,请按照StorageIntegration.swift中的说明进行操作。
推送通知只能发送到开发者门户中特别配置的应用 ID。要测试接收推送通知,您需要:
iOS 模拟器无法注册远程通知,也无法接收推送通知。要接收推送通知,请按照上述步骤操作,并在物理设备上运行应用。
有关构建和测试 SDK 的说明,请参阅 Vertex AI for Firebase README。
Firebase 为 macOS、Catalyst 和 tvOS 提供官方测试支持。visionOS 和 watchOS 由社区支持。感谢社区贡献的许多多平台 PR。
目前,Firebase 的大多数产品都可在 Apple 平台上使用。在 visionOS 和 watchOS 上仍有一些差距。有关当前支持矩阵的详细信息,请参阅 Firebase 文档中的此图表。
在支持的情况下,visionOS 可按预期工作,但通过 Swift Package Manager 使用 Firestore 时除外,在这种情况下需要使用源代码分发。
要启用 Firestore 源代码分发,请退出 Xcode 并使用 FIREBASE_SOURCE_FIRESTORE 环境变量从命令行打开所需的项目:open --env FIREBASE_SOURCE_FIRESTORE /path/to/project.xcodeproj。要返回使用 Firestore 的二进制分发,请退出 Xcode 并像平常一样打开 Xcode,不使用环境变量。
感谢社区的贡献,许多 Firebase SDK 现在可以在 watchOS 上编译、运行单元测试和工作。请参阅独立 Watch 应用示例。
请记住,watchOS 不受 Firebase 官方支持。虽然我们可以通过 GitHub Actions 捕获基本的单元测试问题,但可能会有一些变更导致 SDK 在 watchOS 上无法按预期工作。如果您遇到这种情况,请提交问题。
在控制台进行应用设置时,您可能会遇到类似"检查应用是否与我们的服务器通信"的步骤。这依赖于 Analytics,在 watchOS 上不起作用。可以安全地忽略该消息并继续,其他 SDK 将按预期工作。
感谢社区的贡献,FirebaseCombineSwift 包含对 Apple 的 Combine 框架的支持。该模块目前正在开发中,尚未支持在生产环境中使用。有关更多详细信息,请参阅文档。
有关 Firebase Apple SDK 开源计划和方向的更多信息,请参阅路线图。
有关为 Firebase Apple SDK 做出贡献的更多信息,请参阅贡献。
本仓库的内容根据 Apache 许可证 2.0 版授权。
您对 Firebase 的使用受 Firebase 服务条款的约束。


职场AI,就用扣子
AI办公助手,复杂任务高效处理。办公效率低?扣子空间AI助手支持播客生成、PPT制作、网页开发及报告写作,覆盖科研、商业、舆情等领域的专家Agent 7x24小时响应,生活工作无缝切换,提升50%效率!


多风格AI绘画神器
堆友平台由阿里巴巴设计团队创建,作为 一款AI驱动的设计工具,专为设计师提供一站式增长服务。功能覆盖海量3D素材、AI绘画、实时渲染以及专业抠图,显著提升设计品质和效率。平台不仅提供工具,还是一个促进创意交流和个人发展的空间,界面友好,适合所有级别的设计师和创意工作者。


零代码AI应用开发平台
零代码AI应用开发平台,用户只需一句话简单描述需求,AI能自动生成小程序、APP或H5网页应用,无需编写代码。


免费创建高清无水印Sora视频
Vora是一个免费创建高清无水印Sora视频的AI工具


最适合小白的AI自动化工作流平台
无需编码,轻松生成可复用、可变现的AI自动化工作流

大模型驱动的Excel数据处理工具
基于大模型交互的表格处理系统,允许用户通过对话方式完成数据整理和可视化分析。系统采用机器学习算法解析用户指令,自动执行排序、公式计算和数据透视等操作,支持多种文件格式导入导出。数据处理响应速度保持在0.8秒以内,支持超过100万行数据的即时分析。


AI辅助编程,代码自动修复
Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。


AI论文写作指导平台
AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。


AI一键生成PPT,就用博思AIPPT!
博思AIPPT,新一代的AI生成PPT平台,支持智能生成PPT、AI美化PPT、文本&链接生成PPT、导入Word/PDF/Markdown文档生成PPT等,内置海量精美PPT模板,涵盖商务、教育、科技等不同风格,同时针对每个页面提供多种版式,一键自适应切换,完美适配各种办公场景。


AI赋能电商视觉革命,一站式智能商拍平台
潮际好麦深耕服装行业,是国内AI试衣效果最好的软件。使用先进AIGC能力为电商卖家批量提供优质的、低成本的商拍图。合作品牌有Shein、Lazada、安踏、百丽等65个国内外头部品牌,以及国内10万+淘宝、天猫、京东等主流平台的品牌商家,为卖家节省将近85%的出图成本,提升约3倍出图效率,让品牌能够快速上架。
最新AI工具、AI资讯
独家AI资源、AI项目落地

微信扫一扫关注公众号