因此,当我在 Android 或 iOS 应用程序中以调试或 Release模式运行应用程序时,我的应用程序将收到 FCM 推送通知,完全没有问题。但是在 Google Play 应用商店上发布我的应用程序后,我的 Android 应用程序突然不会收到 FCM 推送通知。
我怀疑这与 Google Play 应用签名有关,因为我也遇到了 Google 登录问题。将 SHA-1 证书指纹从 Google Play 控制台(应用完整性)复制到我的 Firebase 控制台后,我可以解决 Google 登录问题
我还将 SHA-1 版本和调试添加到了 Firebase 控制台。
但不幸的是,我的 Firebase 云消息传递仍然存在问题,该消息只是没有出现在我的通知托盘上。
我错过了什么吗?请帮忙:)
最佳答案
我终于可以解决这个问题了。
就我而言,如果您使用 Google Play 应用签名发布应用,并且在 Google 云平台 (GCP) 中对 Android 应用使用 API key 限制,就会出现此问题。
我无法从设备获取 FCM ID,这就是为什么我们自己的后端无法向 Android 设备发送推送通知,因为 FCM ID 未发送到我们的后端
这是此案例的解决方案
- 打开 Google Play 管理中心,您必须复制 SHA-1 证书指纹。在左侧栏,请找到“设置”-->“应用程序完整性”
- 打开 GCP 控制台上的凭据部分,然后选择您的 Android key 。您可以在这里访问它:https://console.cloud.google.com/apis/credentials
就我而言,导致此问题的错误是:
java.io.IOException: FIS_AUTH_ERROR
因此,如果我的解决方案不起作用,您可能需要按照 this answer 操作
希望这有帮助
关于android - 在 Play 商店中发布 Android 应用程序后,Firebase 云消息传递无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72445017/