如何确保续订的 Firebase 令牌仍适用于之前注册的设备?



我正在构建一个Android应用程序,并设法在我的应用程序中设置了Firebase实例消息传递。 Howerver,我意识到当我在5-6天后再次打开我的应用程序而不打开它时,令牌更新/刷新。而且我很确定我没有做以下任何操作(基于 FCM 文档):

*该应用程序将在新设备上恢复。
*用户卸载/重新安装应用。

但我不确定这到底是如何完成的(由应用程序本身完成):

*应用会删除实例 ID。

无论如何,新的注册令牌是否仅在应用程序重新启动后刷新(即像我的情况一样在 5-6 天后启动)?
旧令牌是否仍然可以在应用程序重新启动(即触发onTokenRefresh())之前接收推送通知/实例云消息?
还是onTokenRefresh()甚至可以在后台默默运行?

所以,我想知道那些专家聊天应用程序如何迎合这种情况?谢谢。

AFAIK,应用程序不会自行删除实例 ID,除非您明确调用它(请参阅我的答案 此处).

如果触发onTokenRefresh(),开发人员有责任调用getToken()来检索新的有效注册令牌,将其发送到其应用服务器并删除旧令牌。如文档中所述:

获取令牌后,可以将其发送到应用服务器并使用首选方法进行存储。

无论应用程序是在前台还是后台,都可以触发onTokenRefresh()(请参阅我的答案 此处).@DiegoGiorgini的这个答案对它的工作原理有一个很好的解释。

相关内容

  • 没有找到相关文章

最新更新