即使应用程序安装在用户移动设备上,也无法从FCM响应

kar*_*ran 10 mobile android firebase google-cloud-messaging firebase-cloud-messaging

我们刚刚从GCM迁移到FCM.为了跟踪卸载,我们向所有用户发送静默通知,如果我们收到"NotRegistered"响应,我们会将用户视为已卸载.从最近几天开始,我们开始为尚未卸载该应用的一些用户获取"NotRegistered".

在查询相同注册令牌的FCM诊断时,正在传递消息,但它们一直处于接受状态.附件是屏幕截图.我在发送邮件时收到的错误代码仍为"NotRegistered".用户尚未卸载app.Attached是屏幕截图.

自6月1日起,我们将收到"未注册",而截至6月4日,消息处于接受状态.此图像显示截至6月4日的通知消息ID:

1

想要澄清以下内容:

  1. 为什么FCM注册令牌的状态更改为NotRegistered.自上个月以来没有升级,用户长时间以来一直在使用最新版本?

  2. 检查FCM错误代码"NotRegistered"是否有完整的证据来跟踪卸载?有更好的机制吗?

AL.*_*AL. 8

  1. 文件NotRegistered中陈述了为什么会发生这种情况的原因,第三种,是您案件的可能原因(强调我的):

    现有的注册令牌在许多场景中可能不再有效,包括:

    • 如果客户端应用程序取消注册FCM.
    • 如果客户端应用程序自动取消注册,则可能会在用户卸载应用程序时发生.例如,在iOS上,如果APNS反馈服务将APNS令牌报告为无效.
    • 如果注册令牌过期(例如,Google可能决定刷新注册令牌,或者iOS设备的APNS令牌已过期).
    • 如果客户端应用程序已更新,但新版本未配置为接收消息.

    对于所有这些情况,请从应用服务器中删除此注册令牌,然后停止使用它来发送消息.

  2. 不.正如我上面链接的那样,NotRegistered错误不仅在卸载期间触发.AFAIK,没有标准的方法.看看其中的一些帖子.

  • @ AL,感谢您的答复。当我删除应用程序时,令牌已删除。新令牌工作正常。但是它发生了3-4次,但实际的问题是,应用程序如何将Token要删除的想法,以及它应该如何始终是一个有效的令牌。?? (2认同)