Catch up on everthing we announced at this year's Firebase Summit. Learn more

对初始化选项进行故障排除

如果您在没有一组有效的 Firebase 选项的情况下初始化您的应用,您的应用的新用户将遇到严重问题。

Firebase 选项是服务所需的一组参数,以便成功与 Firebase 服务器 API 通信并将客户端数据与您的 Firebase 项目和 Firebase 应用程序相关联。 Firebase 服务依赖于 Firebase 初始化期间创建的 Firebase 核心/通用库中提供的有效 Firebase 选项。

不同的 Firebase 服务需要不同的 Firebase 选项才能正常运行,但所有 Firebase 服务都需要以下 Firebase 选项:

  • API密钥-注意:这不是一个FCM服务器密钥,见FCM服务器密钥
    值示例: AIzaSyDOCAbC123dEf456GhI789jKl012-MnO
  • 项目ID -值示例: myapp-project-123
  • 应用程序ID(“的AppID”) -为您的应用程序,其格式的唯一标识符取决于平台:
    • 对于安卓: mobilesdk_app_id -注意:这不是一个Android包名称
      值示例: 1:1234567890:android:321abc456def7890
    • 对于iOS +: GOOGLE_APP_ID -注意:这不是苹果的捆绑ID。
      值示例: 1:1234567890:ios:321abc456def7890

对 Android 应用程序进行故障排除

为了提高安全性,火力地堡SDK更新于2月27日,之后用在一个依赖取代了火力地堡实例ID服务火力地堡安装API

Firebase 安装强制强制 Firebase 选项 API 密钥、项目 ID 和应用程序 ID 的存在和有效性,以便将客户端数据与您的 Firebase 项目相关联。见FirebaseOptions以获取更多信息。

Firebase 云消息传递 (FCM) 与 Firebase 实例 ID (IID)

如果您的应用的新用户遇到 FCM 问题,则可能是您在初始化 Firebase 时没有使用所需的 Firebase 选项集。

应用程序可以是使用不完整的或错误的google-services.json配置文件;或者你的应用程序初始化火力地堡没有全套的需要火力地堡选项。

因此,Firebase Cloud Messaging 等 Firebase 服务将在您的应用随更新的 Firebase SDK 发布后安装的最终用户发生故障。此外,对 Firebase 的重复失败请求可能会降低应用的最终用户体验。

我需要做什么?

要为您的应用修复出现故障的 Firebase 服务:

  1. 通过与您的项目,一个有效的项目ID的一个有效的API密钥和有效的应用程序ID(初始化火力地堡更新您的应用程序mobilesdk_app_id或“应用程序ID”)。
  2. 向 Play 商店发布应用的新版本。

对 Apple 应用程序进行故障排除

为了提高安全性,火力地堡SDK更新1月14日,之后用在一个依赖取代了火力地堡实例ID服务火力地堡安装API

Firebase 安装强制强制 Firebase 选项 API 密钥、项目 ID 和应用程序 ID 的存在和有效性,以便将客户端数据与您的 Firebase 项目相关联。见FIROptions以获取更多信息。

Firebase 云消息传递 (FCM) 与 Firebase 实例 ID (IID)

如果您的应用的新用户遇到 FCM 问题,则可能是您在初始化 Firebase 时没有使用所需的 Firebase 选项集。

您的应用程序可能会使用不完整或无效GoogleService-Info.plist配置文件;或者你的应用程序初始化火力地堡没有全套的需要火力地堡选项。

因此,Firebase Cloud Messaging 等 Firebase 服务在您的应用随更新的 Firebase SDK 发布后安装的最终用户将出现故障。此外,对 Firebase 的重复失败请求可能会降低您应用的最终用户体验。

我需要做什么?

要为您的应用修复出现故障的 Firebase 服务:

  1. 通过与项目的有效的API密钥,一个有效的项目ID和有效的应用程序ID(初始化火力地堡更新您的应用程序GOOGLE_APP_ID或“应用程序ID”)。
    1. 使用火力地堡配置文件默认初始化过程下载您GoogleService-的Info.plist配置文件从火力地堡控制台,然后替换现有文件在您的应用程序。
    2. 编程初始化使用FIROptions对象下载您GoogleService-的Info.plist配置文件从火力地堡控制台找到自己的API密钥,项目ID和应用ID,然后更新在这些值FIROptions在你的应用程序对象。
  2. 向 App Store 发布应用的新版本。

FCM 服务器密钥

如果您的应用使用的FCM服务器密钥,而非云API密钥,这可能会导致在情况下的一个安全漏洞,你使用的是相同的FCM服务器密钥通过FCM发送推送通知。在这种情况下,我们强烈建议您修改您的服务器如何进行身份验证请求发送到FCM

请注意,应用程序中不得包含 FCM 服务器密钥(与 Firebase/Cloud API 密钥不同),因为它们可能会被滥用以您的项目名称发送推送通知。