kev*_*ree 5 android push-notification firebase firebase-cloud-messaging
最初,我有一个可以运行的应用程序并成功接收推送通知。我在 firebase 中重新组织了我们的项目,我们删除了该应用程序并将其重新添加到控制台(在同一项目中)。我重新下载了该google-services.json文件,并注意到一些事情发生了变化,例如mobilesdk_app_id我正在测试的特定应用程序包。
如果我使用新更改进行全新安装,我可以成功收到推送通知。但是,如果我安装旧版本并google-services.json升级而不先卸载,我将无法收到任何通知。FirebaseMessagingService -> onNewToken我还发现升级后,我没有在方法中收到新令牌的回调。
有办法调试这个问题吗?由于 json 文件已更改,我可以强制 Firebase 给我一个新令牌吗?我从控制台发送这些通知并定位正确的应用程序。我很困惑为什么使用新 json 文件进行全新安装可以工作,但从以前的版本升级却不行。
小智 0
升级应用程序不会触发新的 Firebase 设备令牌的生成。因此,旧令牌是使用旧 google-services.json 文件生成的,然后永远不会生成新令牌。
您只需卸载应用程序并重新安装即可解决此问题,这会导致使用新的 google-services.json 文件生成新令牌。
但是,如果您不想要求用户卸载并重新安装您的应用程序,您可以使用FirebaseInstanceId.getInstance().deleteInstanceId();
follow byFirebaseInstanceId.getInstance().getToken();来强制生成新令牌。您必须在主线程之外的单独线程中执行此操作。按照此 stackoverflow 答案中的说明进行操作
| 归档时间: |
|
| 查看次数: |
969 次 |
| 最近记录: |