在 https://firebase.google.com/docs/cloud-messaging/send-message#admin_sdk_error_reference,它说如果FCM刷新了令牌并且我们正在发送到旧的令牌,我们将得到一个registration-token-not-registered
。
我担心刷新令牌的竞争条件,但 android 应用程序尚未能够将新的注册密钥获取到应用程序服务器,我们尝试使用旧注册密钥从应用程序服务器发送通知。在这种情况下,我们会得到registration-token-not-registered
,还是有一个宽限期,旧的注册密钥仍然可以工作,让我们有时间接收新密钥?
在我的日志中,我发现了大约 20 天前刷新的令牌,当我向旧令牌发送消息时,它被接受而没有错误,所以答案是肯定的,旧的注册密钥将继续工作一段时间而不会出错,所以我们不需要担心这种竞争条件:)