如何知道FirebaseInstanceId何时刷新



我正在使用以下代码行来检索FirebaseInstanceId:

FirebaseInstanceId.getInstance().id

我将其用作唯一的应用程序id,并想知道它何时更改,因为我将其保存在服务器端+我想将其存储在我的共享首选项中,所以我需要知道它何时刷新。

  1. 我是否在FirebaseMessagingService的onNewToken(token:String(中执行此操作,即使此方法适用于FCM令牌?据我所知,实例id与FCM令牌紧密耦合,实际上是它的前缀。是否会出现实例id被刷新,但FCM令牌保持不变(反之亦然(的情况?

  2. 如果是,如果我的应用程序不需要FCM,但我仍然想存储它,我该怎么办?无论如何都要执行它?

FirebaseInstanceId上的文档说明如下:

实例ID稳定,除非:

  • 应用程序删除实例ID
  • 应用程序在新设备上还原
  • 用户卸载/重新安装应用程序
  • 用户清除应用程序数据

因此,在我看来,您应该相当安全,因为该id可以由您自己的代码(通过Firebase#deleteInstanceId()(删除,也可以由用户在恢复/重新安装/卸载应用程序时删除。在应用程序的整个生命周期中,没有其他情况可以更改此id。

最新更新