每个设备的FCM设备令牌一旦创建或将会改变?

问题描述:

我正在使用具有云功能的Ionic和Firebase。每当数据更新时,我都会发送通知。每个设备的FCM设备令牌一旦创建或将会改变?

我有两种类型的用户:成员和非成员。

对于会员注册/登录时,如果用户注册,我生成FCM令牌并将其存储。如果用户登录,我会检查用户是否存储了设备令牌。

现在,如果我也想发送非成员的推送通知,我还需要存储他们的设备令牌。

我该如何解决这个问题?

我读过令牌偶尔更新一次吗?如果是这种情况,我该如何检查?

我不知道您用于firebase的cordova插件。但是其中大多数提供了一个回调方法,当firebase-sdk收到一个新的令牌时会被调用。例如cordova-plugin-firebase的onTokenRefresh方法。 当回调被调用时,您将新令牌发送到您的服务器。

+0

thxx为您的答复。我正在使用“fcm插件”是的,这是onTokenRefresh方法。我对此有点困惑。当用户卸载并重新安装应用程序时,会在ontokenrefresh方法中创建一个新标记? – Mikethetechy

+0

我只是想知道。对于调用onTokenRefresh的同一设备,新生成的令牌将与来自同一设备的旧令牌是否相同? – Mikethetechy

+0

我认为以下答案也可以解答您的问题:https://*.com/a/37686075/6184203。当您第一次启动您的应用程序并且它可以连接到谷歌服务器时,会生成初始标记,之后标记可能会更改(刷新),onTokenRefresh将使用新(不同)标记调用。 – David