我有一个带有 Firebase 通知服务的 Android 应用程序,目前正在部署中。与之关联的 google-services.json 文件有错误的条目。我修复了 .json 文件,firebase 服务现在对新安装的应用程序正常工作。但对于当前用户,它不起作用(因为它仍在使用旧令牌)。
当系统确定令牌需要刷新时调用。应用程序应调用 getToken() 并将令牌发送到所有应用程序服务器。
这不会被非常频繁地调用,它是密钥轮换和处理实例 ID 更改所必需的,原因如下:
- 应用删除实例 ID
- 应用程序在新设备上恢复
- 用户卸载/重新安装应用程序
- 用户清除应用数据
系统将限制所有设备的刷新事件,以避免应用程序服务器因令牌更新而过载。
我尝试以编程方式删除 instanceId(所以我得到了一个新令牌);它被删除(不抛出异常),但新令牌与旧令牌相同。
更改 google-services.json 不应该自动触发令牌更改吗?
如何在不为当前用户重新安装应用程序的情况下解决此问题(更新时)?
我正在使用最新版本的 Firebase 和 google-services(在 Gradle 中)。