版本说明

此页面上的变更日志列出了各个 SDK 版本中的变更并介绍了 Firebase 控制台和 Firebase 服务的各项更新。要了解特定版本,请点击下面变更日志中的相应链接。或者,您也可以查看面向 iOSAndroidJavaScriptC ++UnityAdmin Node.jsAdmin JavaAdmin PythonAdmin Go 的所有 Firebase 版本说明。

2018 年 2 月 22 日

SDK 版本

2018 年 2 月 15 日

SDK 版本

2018 年 2 月 14 日

SDK 版本

2018 年 2 月 5 日

SDK 版本

2018 年 2 月 1 日

SDK 版本

2018 年 1 月 30 日

SDK 版本

2018 年 1 月 27 日

SDK 版本

2018 年 1 月 26 日

SDK 版本

2018 年 1 月 25 日

SDK 版本

2018 年 1 月 18 日

SDK 版本

Firebase 动态链接

  • 功能 在 Firebase 控制台中创建动态链接时,您现可指定自定义短链接后缀。具有自定义后缀的短链接更加直观,可以提高链接的点击率。

    默认:

    https://abc123.app.goo.gl/wX2e
    自定义:
    https://abc123.app.goo.gl/backtoschool

Firebase 身份验证

  • 功能 您现可在 Firebase 控制台中指定自己的 SMTP 服务器,用于发送帐号管理电子邮件(例如密码重置电子邮件和电子邮件地址更改确认)。

2018 年 1 月 17 日

SDK 版本

2018 年 1 月 11 日

SDK 版本

2018 年 1 月 10 日

Firebase 实时数据库

  • 功能 Firebase 数据库规则现在允许您根据查询参数来限制对数据的读取或写入权限。详细了解基于查询的规则

2018 年 1 月 4 日

SDK 版本

2018 年 1 月 3 日

SDK 版本

2017 年 12 月 21 日

SDK 版本

2017 年 12 月 18 日

SDK 版本

Firebase Android SDK (v11.8.0) 现已作为 Google Play 服务 11.8.0 版的组件发布,其中包含对 App Indexing、身份验证、云消息传递和性能监控等功能的更新。要安装此 SDK,请参阅将 Firebase 添加至您的 Android 项目

2017 年 12 月 13 日

SDK 版本

Firebase 控制台

  • 功能 您现在可以关联 DoubleClick 与 Firebase 项目。关联后,您可使用 DoubleClick Campaign Manager (DCM) 或 DoubleClick Bid Manager (DBM) 来跟踪 Firebase 衡量的应用内事件(例如计为转化的安装和应用内购买)。

2017 年 12 月 8 日

SDK 版本

2017 年 12 月 7 日

SDK 版本

2017 年 12 月 6 日

Firebase 控制台

  • 功能 新增了控制台内通知。您可以点击控制台右上角的通知图标查看您的通知。通知会显示您项目中的重要事件。

2017 年 12 月 5 日

Firebase 控制台

  • 变动 现在,在 Firebase 控制台中使用项目选择器来切换项目时,您会回到在之前查看的 Firebase 产品中,而不是返回到项目概览信息中心。

2017 年 11 月 30 日

Firebase 控制台

  • 变动 导入项目按钮已从 Firebase 控制台中移除。您现在可以通过添加项目对话框将 Firebase 添加到现有项目中。

SDK 版本

2017 年 11 月 27 日

SDK 版本

Firebase Android SDK (v11.6.2) 现已作为 Google Play 服务 11.6.2 版的组件发布。此版本包含对 Cloud Firestore 和 Firebase 存储的更新。要安装此 SDK,请参阅将 Firebase 添加至您的 Android 项目

2017 年 11 月 21 日

Firebase Gradle 插件

适用于 Android Studio 3.0 的 Firebase Gradle 插件 1.1.5 版现已发布。此版本解决了在 gradle.properties 文件中设置 firebasePerformanceInstrumentationEnabled=false 时 firebase-perf 插件内发生的 FileExistsException 问题。

SDK 版本

2017 年 11 月 14 日

SDK 版本

2017 年 11 月 10 日

Firebase 实时数据库

SDK 版本

2017 年 11 月 9 日

SDK 版本

2017 年 11 月 8 日

Firebase 控制台

  • Firebase 控制台进行了更新并采用了新的外观设计。更新后的导航栏会以可折叠的形式呈现各类 Firebase 产品。现在,这些产品依据应用开发生命周期划为四个类别。

  • Firebase 控制台的项目概览页面进行了更新并采用了新的外观设计。新设计现在会显示每个应用的日活跃用户数、月活跃用户数、未遇到崩溃的用户百分比以及总崩溃次数等指标的当前数据和上个月的趋势。

  • Analytics 信息中心焕然一新,新增的卡片和重新设计的卡片可助您轻松解答日常问题和完成日常任务。添加了最新版本部分,以显示您的最新应用版本的采用率和稳定性。

2017 年 11 月 7 日

SDK 版本

Firebase Gradle 插件

适用于 Android Studio 3.0 的 Firebase Gradle 插件 1.1.4 版现已发布。此版本解决了在 Windows 上使用 firebase-perf 时,增量编译过程中发生的 TransformException 错误。

2017 年 11 月 6 日

SDK 版本

Firebase Android SDK (v11.6.0) 现已作为 Google Play 服务 11.6.0 版的组件发布。此版本包含对 App Indexing、Analytics、身份验证、云消息传递、动态链接、Cloud Firestore 和性能监控等功能的更新。要安装此 SDK,请参阅将 Firebase 添加至您的 Android 项目

Firebase Gradle 插件

由于 Android Studio 3.0 中弃用了 compile 配置,因此 Firebase Gradle 插件 1.1.3 版现在接受 implementation 配置(取代 compile 配置)。

2017 年 11 月 2 日

身份验证

Firebase JS Authentication SDK 已正式开源。请访问 GitHub 查看源代码。我们期待与大家一起努力,进一步优化 SDK!

SDK 版本

Firebase Gradle 插件

Firebase Gradle 插件 1.1.2 版现已发布,此版本新增了对 Android Studio 3.0 的支持。

2017 年 10 月 30 日

SDK 版本

2017 年 10 月 24 日

SDK 版本

2017 年 10 月 20 日

SDK 版本

2017 年 10 月 19 日

SDK 版本

2017 年 10 月 17 日

SDK 版本

2017 年 10 月 13 日

SDK 版本

2017 年 10 月 12 日

SDK 版本

2017 年 10 月 11 日

SDK 版本

2017 年 10 月 9 日

SDK 版本

2017 年 10 月 3 日

Cloud Firestore

  • 功能 Cloud Firestore 的初始公测版现已发布,适用于 iOS、Android、网页、Java、Python、NodeJS 和 Go。Firestore 是一种灵活且可扩展的数据库,可助力您在 Firebase 和 Google Cloud Platform 上进行移动、网页和服务器开发。与实时数据库一样,它可以通过实时侦听器使您的数据在各个客户端应用之间保持同步,并提供离线支持,以帮助您构建不受网络延迟时间或互联网连接状况影响、响应迅速的应用。Cloud Firestore 还提供企业级的可扩展性,以及与其他 Firebase 和 Google Cloud Platform 产品(包括函数)无缝集成的能力。如需详细了解 Cloud Firestore,请访问 Firebase 博客。要立即开始使用 Cloud Firestore,请参阅快速入门指南

SDK 版本

2017 年 10 月 2 日

SDK 版本

2017 年 9 月 27 日

SDK 版本

2017 年 9 月 21 日

SDK 版本

2017 年 9 月 20 日

SDK 版本

2017 年 9 月 18 日

SDK 版本

2017 年 9 月 13 日

SDK 版本

2017 年 9 月 7 日

SDK 版本

2017 年 9 月 6 日

SDK 版本

Firebase 控制台

  • 功能 Google Analytics for Firebase 报告现可导出为 CSV 格式,以便在电子表格中进行分析。如需了解详情,请参阅相关的 Firebase 帮助文章

2017 年 8 月 30 日

SDK 版本

2017 年 8 月 23 日

SDK 版本

2017 年 8 月 17 日

SDK 版本

2017 年 8 月 16 日

SDK 版本

2017 年 8 月 14 日

SDK 版本

2017 年 8 月 2 日

Firebase Gradle 插件

  • Firebase Gradle 插件 1.1.1 版修复了 1.1.0 版中的一个问题(该问题会在某些情况下导致错误“Execution failed for task ':app:packageInstantRunResourcesDebug'”。要更新到新版本,请按照性能监控崩溃报告的指南进行操作。

2017 年 8 月 1 日

SDK 版本

2017 年 7 月 27 日

SDK 版本

2017 年 7 月 26 日

SDK 版本

2017 年 7 月 25 日

SDK 版本

2017 年 7 月 24 日

SDK 版本

2017 年 7 月 12 日

SDK 版本

2017 年 7 月 7 日

SDK 版本

2017 年 6 月 29 日

SDK 版本

2017 年 6 月 28 日

SDK 版本

2017 年 6 月 21 日

SDK 版本

2017 年 6 月 16 日

SDK 版本

2017 年 6 月 14 日

SDK 版本

2017 年 6 月 9 日

SDK 版本

2017 年 6 月 8 日

SDK 版本

2017 年 6 月 7 日

SDK 版本

2017 年 6 月 6 日

SDK 版本

2017 年 6 月 1 日

SDK 版本

2017 年 5 月 31 日

SDK 版本

2017 年 5 月 30 日

SDK 版本

2017 年 5 月 17 日

Firebase 性能监控

  • 功能 Firebase 性能监控的首个公测版现已可用于 iOS 和 Android 应用。性能监控可让您深入了解应用的性能和网络行为。要详细了解如何使用性能监控功能提升应用质量,请参阅 Firebase 性能监控

SDK 版本

Firebase 控制台

  • 功能 Firebase 控制台现已支持一个用户登录多个帐号。用户可通过顶部导航栏中的帐号切换器切换帐号。

2017 年 5 月 11 日

2017 年 5 月 9 日

2017 年 4 月 28 日

2017 年 4 月 25 日

2017 年 4 月 20 日

2017 年 4 月 18 日

2017 年 4 月 14 日

2017 年 4 月 13 日

2017 年 4 月 12 日

2017 年 4 月 11 日

2017 年 4 月 4 日

2017 年 3 月 28 日

2017 年 3 月 21 日

2017 年 3 月 16 日

2017 年 3 月 15 日

2017 年 3 月 14 日

2017 年 3 月 9 日

2017 年 3 月 8 日

  • 功能 现已支持使用 Analytics 用户属性使通知编辑器针对具体用户发送消息。现在,您可以借助 AND 运算符来结合使用 Analytics 受众群体与用户属性,向目标用户发送通知;或者使用 NOT 运算符来定位不属于 Analytics 受众群体或不具备某个用户属性的用户。

  • Firebase C++ SDK (v3.1.0) 现已发布,其中包含对存储和邀请功能的更新。要安装此 SDK,请参阅将 Firebase 添加至您的 C++ 项目

2017 年 3 月 7 日

2017 年 3 月 2 日

2017 年 3 月 1 日

2017 年 2 月 27 日

2017 年 2 月 23 日

2017 年 2 月 21 日

2017 年 2 月 15 日

崩溃报告

  • 功能 Firebase 控制台中新增了一项功能,该功能可显示在所选时间范围内某个应用中未遇到过错误(崩溃或非严重错误)的用户所占的百分比。此类信息会显示在崩溃报告控制台的“未遇到错误的用户”面板中。

2017 年 2 月 14 日

2017 年 2 月 7 日

2017 年 2 月 6 日

2017 年 2 月 3 日

  • 功能 新增了将多个域名关联至单个 Firebase 托管项目的功能。
  • 变动 更新了 Firebase 托管域名所有权验证界面,以提升可靠性并减少等待时间。
  • 修复 新增了跨不同 Firebase 项目使用多个子域名(根域名相同)的支持。

2017 年 2 月 2 日

2017 年 2 月 1 日

2017 年 1 月 31 日

2017 年 1 月 24 日

2017 年 1 月 20 日

2017 年 1 月 18 日

2017 年 1 月 17 日

2017 年 1 月 10 日

2016 年 12 月 15 日

  • 功能 Android 版崩溃报告 Gradle 插件现已发布。此插件可简化上传 ProGuard 映射文件以便针对堆栈跟踪进行反混淆作业的流程。如需了解详情,请参阅使用 Gradle 上传 ProGuard 映射文件

2016 年 12 月 13 日

2016 年 12 月 9 日

2016 年 12 月 6 日

2016 年 11 月 29 日

2016 年 11 月 21 日

Firebase 控制台

  • 功能 应用名称的缩写(称为“应用别名”)现可通过 Firebase 控制台管理和查看。
  • 功能 简化了向项目添加服务帐号的流程。

分析

  • 变动 事件名称和参数名称的最大长度增加到 40 个字符,字符串参数值的最大长度增加到 100 个字符。

通知编辑器

  • 功能 现可在 Firebase 控制台的通知设置部分中查看实例 ID 键。

2016 年 11 月 18 日

2016 年 11 月 15 日

2016 年 11 月 9 日

Google Analytics for Firebase

  • 修复 现有用户如果更新到支持 Analytics 的应用版本,就不会再纳入 first_open 指标的计算。这是服务器端的一项更正,可能会导致 first_open 指标下降。

2016 年 11 月 8 日

2016 年 11 月 7 日

崩溃报告

  • 变动 Firebase 崩溃报告现已完成测试。要开始使用崩溃报告,请参阅崩溃报告简介

Firebase Android 测试实验室

  • 功能 如果使用 Spark(免费)和 Flame 定价方案,您现在可以每天运行多项测试。如需了解详情,请参阅 Firebase 的价格

2016 年 11 月 3 日

2016 年 11 月 1 日

2016 年 10 月 31 日

远程配置

  • 功能用户(随机百分位)规则中增加了将应用用户随机重新分配至新百分比范围的功能。如需了解详情,请参阅远程配置规则类型

2016 年 10 月 24 日

Firebase 控制台

  • 功能 - 项目所有者和编辑者现可创建应用别名,别名会显示在 Firebase 控制台的各个位置,以及完整软件包名称或软件包 ID 的旁边。

  • 功能 - 项目所有者和编辑者现在可为其应用更改报告所用币种。

身份验证

  • 功能 移除了 Firebase 控制台上用户表中 500 个用户的限制,并优化了此表中的搜索功能。

动态链接

  • 功能 您可利用 Link Shortener REST API 以编程方式生成短动态链接。
  • 功能 您现可在 Firebase 控制台中输入 SHA256 校验和来启用 Android AppLink。

2016 年 10 月 19 日

2016 年 10 月 14 日

2016 年 10 月 10 日

远程配置

  • 功能 现已支持使用 Google Analytics for Firebase 用户属性来创建条件。如需了解详情,请参阅远程配置和用户属性

2016 年 10 月 6 日

2016 年 10 月 3 日

测试实验室

  • 变动 - 测试实验室现在将对 Android 虚拟设备 (AVD) 上的测试应用进行收费,标准为每台设备每小时 1 美元。如需详细了解测试实验室的计费方式,请参阅测试实验室结算

2016 年 9 月 27 日

SDK 版本

2016 年 9 月 21 日

SDK 版本

2016 年 9 月 14 日

SDK 版本

动态链接

  • 功能 在各个平台上,只要在动态链接网址结尾添加“&d=1”,即可调试长动态链接的行为。
  • 变动 - 当用户点击其 iOS 设备上未安装的应用的动态链接时,该动态链接现在会打开该应用在 App Store 中的安装页面,除非指定了 iOS 后备链接参数。无论用户是在 Safari 还是其他应用中点击链接,情况都是如此。

2016 年 9 月 8 日

2016 年 9 月 7 日

2016 年 8 月 26 日

SDK 版本

2016 年 8 月 23 日

SDK 版本

远程配置

  • 功能 新增了从 Firebase 控制台的远程配置参数标签中搜索参数和条件的功能。

2016 年 8 月 16 日

2016 年 8 月 1 日

SDK 版本

Firebase 控制台

  • 功能 对于您拥有只读访问权限的项目,Firebase 控制台顶部现在会显示一个只能查看指示标志。一些操作按钮也已更新,以便针对没有项目的修改者所有者权限的用户隐藏或停用。
  • 功能 在管理应用时,您可以使用“高级选项”部分中的新操作按钮从项目中删除应用。
  • 功能 创建项目后,可在项目设置对话框中修改其名称。

实时数据库

  • 功能 您现在可以在 Firebase 控制台中点击使用情况标签查看使用情况指标。Firebase 目前跟踪带宽使用情况、使用的总存储空间以及最大并发连接数。

托管

  • 功能 您现在可以在 Firebase 控制台中点击使用情况标签查看托管功能的使用情况指标。Firebase 目前会跟踪已发送字节数(带宽)和使用的总存储空间。

通知编辑器

  • 功能 为通知摘要数据视图增加了分页功能,便于更轻松地滚动和查看多条通知消息。

2016 年 7 月 26 日

2016 年 7 月 12 日

2016 年 6 月 29 日

2016 年 6 月 28 日

Firebase Android 测试实验室

2016 年 6 月 27 日

文档

  • 修复 根据客户的反馈,我们对 Firebase 文档进行了数百处小改进。

通知编辑器

  • 功能 发送通知时,您现在可以添加三个以上的自定义数据字段。一条通知的总大小(包括消息文字、自定义数据和所有高级选项)不得超过 4KB。
  • 功能 缩短了应用版本和语言列表的刷新间隔。
  • 功能 通知编辑器的 Google Analytics for Firebase 渠道数据视图中的转化事件计数功能现在可以显示触发了至少一次转化事件的用户数。以前,该视图显示触发的转化事件的原始数量。

C++ SDK

2016 年 6 月 14 日

2016 年 6 月 7 日

2016 年 6 月 2 日

身份验证

  • 修复 Google Play 服务版本 9.0.2 现已发布。此版本修复了 Firebase 身份验证的一个已知问题:有的设备无法使用 FirebaseAuthApi,当这些设备试图使用 Authentication API 时,会发生 FirebaseApiNotAvailableException 错误。

崩溃报告

  • 修复 更新了 Firebase Crash Reporting iOS SDK,以修复崩溃报告使用的符号上传脚本存在的问题,同时修复此 SDK 的一些其他问题。

2016 年 5 月 24 日

2016 年 5 月 18 日

Firebase iOS SDK 版本 3.2.0 现已发布,Firebase Android SDK 版本 9.0.0 现在也已发布。

  • 功能 Firebase 新增了几个新产品:Analytics、存储、远程配置、崩溃报告、动态链接和通知编辑器。
    • 一些现有 Google 产品现已成为 Firebase 的组件:Google 云消息传递、Cloud Test Lab 和 App Indexing。
    • Firebase 现在已与 AdMob 和 AdWords 集成。
    • 我们发布了一个新网站,网址为 https://firebase.google.com/,其中包含新的控制台、优化的文档以及更新的产品信息。
  • 问题 Node.js server SDK 在 Node 0.10.x 上无法使用。这一问题已在 JavaScript SDK (v3.0.1) 中修复
  • 问题 npm 软件包无法与 Browserify 和 webpack 正常配合使用。这一问题已在 JavaScript SDK (v3.0.2) 中修复

实时数据库

身份验证

  • 变动 安装和初始化 SDK 的方式已发生变化,同时大部分的 API 也已重新命名。如您决定升级,请参阅 iOS 应用迁移指南网页应用迁移指南Android 应用迁移指南以了解详细信息。
  • 变动 Node.js/Java 服务器 SDK:
    • Firebase 身份验证的令牌创建和验证流程现已内置到服务器 SDK 内,而不是在单独的令牌创建库中。
      • 现有的所有身份验证方法均已移除。在初始化 SDK 时,请改用 databaseAuthVariableOverride 选项 (Node.js) 或 setDatabaseAuthVariableOverride() 方法 (Java)。如需了解详情,请访问此处
      • 请根据网页应用迁移指南Android 应用迁移指南将您的 Node.js 或 Java 代码更新为最新的 API。
  • 问题 常规问题:
    • 从联合提供方提取的个人资料数据有限(例如不包括 Twitter 用户名)。
    • 解决方法:如果可能,通过第三方 SDK 提取这些信息。
  • 问题 Firebase Android SDK:
    • FirebaseUser#linkWithCredential() 可能会使用户的凭据失效。
      • 说明:使用并非 EmailAuthCredential 的凭据调用 linkWithCredential() 后,有时在用户对象上的连续调用可能会使系统抛出异常:FirebaseException (An internal error has occurred. [ TOKEN_EXPIRED ])
      • 解决方法:缓存链接事件所用的凭据,如果系统抛出此错误,请在链接后退出用户帐号,然后使用缓存的凭据调用 FirebaseAuth#signInWithCredential()
    • 缺少 API,无法开始电子邮件验证流程。
    • 抛出的一些网络异常显示为 FirebaseException 而非 FirebaseNetworkException
  • 问题 iOS 版 Firebase SDK:
    • sendPasswordResetWithEmail:completion: 并不按照主线程中的声明调用完成处理程序。
    • 解决方法:

      Objective-C

      [[FIRAuth auth] sendPasswordResetWithEmail:@"user@host.domain"
                                completion:^(NSError *_Nullable error) {
      dispatch_async(dispatch_get_main_queue(), ^{
      // original completion handler code.
      });
      }];
      

      Swift

      FIRAuth.auth()?.sendPasswordResetWithEmail("user@host.domain") { error in
      dispatch_async(dispatch_get_main_queue()) {
      // original completion handler code.
      }
      }
      
      • API 参考文档不含关于错误情况的信息,请在此处查看。
      • 当在 iOS 模拟器上运行时,身份验证状态在各应用之间共享:
        • 说明:在同一 iOS 模拟器上运行两个或更多使用 Firebase 身份验证的应用时,会有一个 iOS 密钥链问题,导致身份验证状态跨不同的应用共享。这意味着如果您登录一个应用,并在稍后打开另一个应用,则可能会发现已经有用户登录了该应用。
        • 解决方法:要么不在同一个模拟器实例上运行两个使用身份验证的不同应用,要么在各次测试之间从应用中手动退出用户帐号。
    • 问题 Firebase JavaScript SDK:
      • 如果您在一些用户已经登录时更改应用的 authdomain 配置,则必须先使他们退出帐号再重新登录,才能使用 linkWithPopup/Redirect API。
      • 无法在 Safari 隐身浏览模式下运行。

存储

  • 功能 Cloud Storage 首次发布。不管网络质量如何,Cloud Storage 都可以为您的 Firebase 应用提供安全的文件上传与下载。您可以使用此功能存储图片、音频、视频或其他由用户生成的内容。Firebase 存储基于功能强大、使用简单且经济实惠的对象存储服务 Google Cloud Storage 技术。
  • 问题 Firebase 控制台:只有项目所有者能更新面向 Cloud Storage 的 Firebase 安全规则,只有所有者和编辑者能查看存储安全规则。

FCM

  • 功能 - 云消息传递功能首次发布。

  • 问题 Firebase C++ SDK:

    • 同时具备通知和数据负载的消息不能送达至在后台打开的 Android 应用。
    • 说明:在 Android 中,如果应用在后台打开时收到同时带有通知和数据负载的消息,则该消息无法送达至该应用。
    • 解决方法:在应用的 Activity(例如 NativeActivity)中,重写 onNewIntent(Intent intent) 方法并将 intent 参数传递给 setIntent(Intent intent) 方法
    • 例如:
      public class MyActivity extends NativeActivity {
      @Override
      onNewIntent(Intent intent) {
      setIntent(intent);
      }
      }
      如需了解此解决办法的实际应用示例,请参阅快速入门示例

发送以下问题的反馈:

此网页
需要帮助?请访问我们的支持页面