平滑 GCM 到 FCM 的过渡

Smooth GCM to FCM transition

有人有这方面的经验吗?我正在调查迁移,但由于我们已经发布了与 GCM 一起发布的应用程序,每天有成千上万的用户和成千上万的通知,我不太愿意,因为担心会破坏现有服务。有人顺利过渡了吗?

具体来说,在教程 (https://developers.google.com/cloud-messaging/android/android-migrate-fcm) 中,第一步是 'Import Google Project'。这是一种单向操作吗?现有的 GCM 服务器解决方案和已部署的 GCM 应用程序能否继续工作?

或者创建一个新项目并维护两个服务器解决方案直到 GCM 部署的应用程序被淘汰是最好的选择?

先测试一下,FCM有很多需要注意的地方。

主要问题:

  1. 当应用程序处于后台或被杀死时,白色通知图标。
  2. 应用多次打开关闭后挂起。

阅读这些问题来决定:

将您的 Google 项目导入 Firebase 是一种单向操作,但这不是破坏性操作,您当前的项目将需要 APIs 打开并且必要 API将生成用于 Firebase 的密钥,但如果您决定不继续使用 Firebase,您仍然可以从 Google 开发人员控制台管理该项目。

您当前的服务器解决方案将继续像以前一样工作。我会继续将您的项目导入 Firebase。这比必须将后端迁移到新项目要容易得多。

注意:

  • 如果您使用 InstanceID 前的令牌作为设备 ID,则它们将无法在 Firebase 控制台或主题中使用。因此,您必须使用 Firebase 控制台 and/or 主题维护可以发送给哪些用户的映射。如果您将 GCM 与 InstanceID 一起使用,则无需执行任何操作,因为 FCM 也使用 InstanceID。您可以使用 FCM REST API 发送到所有令牌、InstanceID 或预 InstanceID。
  • 确保不要在同一客户端应用程序中使用 GCM 和 FCM 库。您可以在生成令牌和处理收到的消息时发现问题。