【问题标题】:Upgrading GCM to FCM server reports MismatchSenderId error升级 GCM 到 FCM 服务器报 MismatchSenderId 错误
【发布时间】:2018-08-16 00:36:40
【问题描述】:

我当前的生产应用使用旧版本的 GCM。关于如何将 GCM 升级到 FCM 的说明在一些地方不太合适,但我已经完成了大部分迁移,并且几乎可以工作。

我可以将消息从开发者控制台发送到应用的新 FCM 版本。好的,到目前为止...

将后端服务器端点更改为 fcm.googleapis.com/fcm/ 后,服务器可以继续向我的应用的旧 GCM 版本发送消息。就像以前一样。

但是,当后端服务器尝试向新的 FCM 版本的应用发送消息时,请求被拒绝并出现 MismatchSenderId 错误。我们使用与应用程序的 GCM 版本完美配合的相同发件人 ID。每个人都在使用同一个项目。我需要做些什么来导入旧的 GCM 项目设置吗?如果我将后端服务器更改为使用新的 FCM 服务器密钥,它是否仍能够将消息推送到旧 GCM 版本的应用?

【问题讨论】:

  • 您找到解决方案了吗?

标签: android firebase google-cloud-messaging firebase-cloud-messaging


【解决方案1】:

您可能需要下载google-services.json 的当前版本并使用此版本进行身份验证,因为它很可能定义了其他所有帐户;尽管新的 FCM 端点仍然可以使用以前的 GCM 凭据处理身份验证。

【讨论】:

  • 这没有帮助。实际上也没有将应用程序的 FCM 版本发布为开放的 alpha 版本。唯一需要尝试的是使用 FCM 身份验证密钥,并希望它仍然适用于旧版 GCM 应用。
  • 认为可以将多个键添加到该 JSON 中,就像一个可以具有两个不同的 JSON 和/或用于调试构建的备用 Manifest.xml 一样...当然您需要实际的键才能登录...而如果它被释放,最不重要。
【解决方案2】:

Google 支持人员最终做出了回应,并帮助追踪了这一点。事实证明,我在不知情的情况下使用另一个发件人 ID 创建了第二个 FCM 项目。并且用错误的项目注册了应用程序。

【讨论】:

    猜你喜欢
    • 2018-06-26
    • 1970-01-01
    • 1970-01-01
    • 2013-06-20
    • 1970-01-01
    • 1970-01-01
    • 2012-07-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多