45

Google 刚刚宣布 Google Cloud Messaging 现在更名为 Firebase Cloud Messaging。这对 GCM 的现有用户意味着什么以及需要进行哪些迁移(如果有)?

4

5 回答 5

107

什么是 FCM,我们为什么要使用它?

FCM(Firebase Cloud Messaging)是 Firebase 品牌下的 Google Cloud Messaging API 的新改进版本。它具有 GCM 的所有功能以及一些附加功能。根据Firebase 常见问题解答,它“继承了 GCM 的核心基础架构,使用新的 SDK 使云消息传递开发更容易”谷歌在他们的Cloud Messaging FAQ中解释了他们发布 FCM 的决定,他们写道:

Firebase 以跨平台而著称,因此 FCM 现在非常适合为 Android、iOS 和移动网络设计的 Firebase 功能套件

Google 建议在其 APIs for Android Release Notes中从 GCM 升级到 FCM 。Firebase 常见问题解答中给出了这样做的原因:

升级到 FCM SDK 的好处包括:

  • 更简单的客户端开发。您不再需要编写自己的注册或订阅重试逻辑。
  • 开箱即用的通知解决方案。您可以使用 Firebase Notifications,这是一种带有 Web 控制台的无服务器通知解决方案,任何人都可以根据 Firebase Analytics 见解向特定受众发送通知。

GCM 是否已弃用?

GCM 的一些功能已经被弃用(例如,参见https://developers.google.com/cloud-messaging/android/legacy-regid),现在在未来几天 GCM 将被完全弃用。谷歌说

我们将继续支持当前版本的 GCM Android 和 iOS SDK,因为我们知道现在很多开发人员都在使用 GCM SDK 来处理通知,并且客户端应用程序升级需要时间。

但是所有新的客户端功能都将被添加到 FCM SDK 中,只会向前发展。强烈建议您升级到 FCM SDK。

如何将旧的 Android 应用程序从 GCM 更新到 FCM

来自https://developers.google.com/cloud-messaging/android/android-migrate-fcm

将您的 GCM 项目导入为 Firebase 项目:

在 Firebase 控制台中,选择Import Google Project

从现有项目列表中选择您的 GCM 项目,然后选择 Add Firebase

在 Firebase 欢迎屏幕中,选择Add Firebase to your Android App

提供您的包名称和 SHA-1,然后选择Add App。为您的 Firebase 应用下载一个新的 google-services.json 文件。

选择继续并按照在 Android Studio 中添加 Google 服务插件的详细说明进行操作。

于 2016-05-26T06:22:55.687 回答
33

更新:最近通过电子邮件宣布 GCM 现已弃用并将在明年(2019 年)完全删除,所有 GCM 用户都应开始迁移到 FCM。有关更多详细信息,请在此处查看我的答案。


除了什么Pritam Baral 的回答,请注意 FCM 的核心是由 GCM 本身组成的。没有实际需要迁移到它,但鼓励这样做,因为当迁移到 FCM 时,与之相关的所有功能都将可供使用。参考Firebase 官方定价页面时,免费提供的功能包括:

分析、应用索引、身份验证、动态链接、FCM、邀请、通知、崩溃报告和远程配置

如GCM 和 FCM 常见问题解答中所述,Pre-IO GCM 实现在未来应该仍然可以工作更长的时间:

我们将继续支持当前版本的 GCM Android 和 iOS SDK,因为我们知道现在很多开发人员都在使用 GCM SDK 来处理通知,并且客户端应用程序升级需要时间。

但是所有新的客户端功能都将被添加到 FCM SDK 中,只会向前发展。强烈建议您升级到 FCM SDK。


根据最近的亮点

Firebase Cloud Messaging 建立在 Google Cloud Messaging API 之上并对其进行了改进。您可以通过 com.google.android.gms.gcm 继续使用 Google Cloud Messaging,但我们建议升级到 com.google.firebase:firebase-messaging。

于 2016-05-19T05:22:50.297 回答
4

云基础设施将基本保持不变,因此现有的 GCM 应用程序应该可以继续正常工作。虽然我还没有发现任何关于 Google 的弃用政策的提及,但 Google 破坏现有的 GCM 基础设施/SDK/代码是不寻常的(而且他们没有理由)。

FCM 似乎是 GCM 的更好版本,可在多个平台(甚至网络!)上使用,并且设置更简单(与 GCM 相比)。迁移指南适用于AndroidiOS

于 2016-05-18T23:16:50.687 回答
2

谷歌已扩展 GCM 以将消息发送到 Android 以外的多个平台:iOS 和 Chrome。Firebase 以跨平台而著称,因此 FCM 现在非常适合为 Android、iOS 和移动网络设计的 Firebase 功能套件。

流式细胞仪

  • 它是 GCM 的高级/改进版本,但具有新品牌 Firebase
  • 非常容易/简化的客户端开发
  • 无服务器控制台,任何人都可以将通知发送到特定设备
  • 通知负载:4KB,消息负载:2KB。请注意,通知还包括设备和应用程序信息。
  • 如果设备离线,每台设备存储 100 条通知/消息。
于 2017-06-06T05:45:22.070 回答
-1

Firebase 云消息传递 (FCM) 是 GCM 的新版本。它继承了可靠且可扩展的 GCM 基础架构,以及新功能!请参阅常见问题解答以了解更多信息。如果您要在新应用程序中集成消息传递,请从 FCM 开始。强烈建议 GCM 用户升级到 FCM,以便从现在和将来的新 FCM 功能中受益。

  1. FCM 是 Firebase 品牌下的新版 GCM。它继承了 GCM 的核心基础架构,以确保我们继续在 Android、iOS 和 Chrome 上可靠地传递消息。

  2. 是的,GCM 的某些功能已被弃用,但它们支持所有以前的客户端。

  3. 要从 GCM SDK 升级到 FCM SDK,请参阅Android迁移指南

了解更多信息。https://developers.google.com/cloud-messaging/faq

于 2016-05-26T05:47:51.813 回答