FirebaseInstanceId.getInstance()。getToken()可靠性

时间:2017-09-02 02:52:02

标签: android firebase firebase-cloud-messaging

当我从文档和其他来源阅读时,建议在 onTokenRefresh()中调用 FirebaseInstanceId.getInstance()。getToken(); 以确保我们获得更新后的令牌

我尝试的是每次打开应用程序时都会调用它,它的返回值总是如此,我想知道这是值得信赖的东西吗?(是否保证每次调用时都会生成令牌?< / strong>)或者是否有任何可能返回null的情况?

因为我不希望用户使用相同的帐户登录多个设备,所以我希望将其用作唯一标识符。

1 个答案:

答案 0 :(得分:3)

根据我的知识和经验,我会尽力解决您的疑虑:

  

是否保证每次调用时都会生成令牌?

不会每次调用此方法时都不会生成令牌。它只会返回当前令牌。

  

是否有任何情况可能会返回null?

是的,如果您的令牌尚未生成,则返回null。

  

我希望将它用作唯一标识符

是的,您可以将其用作每个设备的唯一标识符,而不是每个帐户。每个设备都有其唯一的令牌。

这是来自官方文件:

  

检索当前注册令牌

     

当您需要检索当前令牌时,请致电   FirebaseInstanceId.getInstance()。为gettoken()。此方法返回null   如果尚未生成令牌。

有关更多信息,请参阅this link