在 Android,我的应用程序的 FCM 机密是否可用于冒充我的应用程序?

On Android, can my app's FCM secrets be used to impersonate my app?

我设置了一个 Android 应用来接收 FCM 推送通知。该应用程序使用 FCM 令牌向我的服务器注册。我的想法是通过向令牌发送推送通知来证明令牌来自我的应用程序。它只会到达我的应用程序,对吗?

我想知道坏人是否可以从我的应用程序中提取 FCM 秘密(配置 google-services.json),用我的包名制作一个应用程序,然后诱骗人们安装它在他们的设备上。当恶意应用程序注册到我的服务器时,我怀疑我无法判断它是否来自正确的应用程序。我还怀疑如果我向令牌发送推送通知,它将被无误地发送。我说得对吗?

非常感谢任何帮助。

没有来自 google-services.json 的秘密嵌入到您的应用程序中。在这里查看我的回答:

使用 google-services.json 中的信息,您所能做的就是 接收 消息,您将无法仅使用该信息发送它们。

要向 用户 发送消息,您还需要在调用 API 时指定 FCM 服务器密钥(或者提供证明您是授权用户的凭据)项目的合作者)。此信息在 google-services.json可用,并且应该从不在面向客户端的应用程序代码中使用。