Firebase 取消通知权限vs匿名FCM令牌
我很想知道应用程序代码应该如何处理撤销通知权限令牌以及Firebase云消息(FCM)。问题部分类似于,尽管他们的案例不包括FCM 因此,我们有以下场景:Firebase 取消通知权限vs匿名FCM令牌,firebase,push-notification,notifications,firebase-cloud-messaging,Firebase,Push Notification,Notifications,Firebase Cloud Messaging,我很想知道应用程序代码应该如何处理撤销通知权限令牌以及Firebase云消息(FCM)。问题部分类似于,尽管他们的案例不包括FCM 因此,我们有以下场景: 应用程序不要求用户登录(因此,我们存储在数据库中的令牌是匿名的,与任何uid都没有关联) 该应用程序提供了一组选择加入/选择退出按钮,用于授予和撤销通知权限 应用程序在数据库中收集令牌,供firebase函数中的sendToDevice(令牌、通知)稍后使用 应用程序在令牌发出(getToken)或刷新(onTokenRefresh)后,通过
uid
都没有关联)sendToDevice(令牌、通知)
稍后使用getToken
)或刷新(onTokenRefresh
)后,通过使用localStorage
将令牌持久化,以便稍后将其提供给deleteToken(令牌)
,并在UI中指示通知订阅的当前状态deleteToken(token)
方法并清除相应的本地存储项。所有内容都应同步,FCM将不再发送给此用户这里最常见的做法是什么?不鼓励匿名通知吗?我对通知和FCM的理解是否遗漏了任何内容?令牌最终将失效。您将能够知道,因为向该令牌发送消息将产生“error:notregisted”的错误。从链接的文档中: 现有注册令牌可能在以下情况下失效: 情景,包括:
- 如果客户端应用程序向FCM注销
- 如果客户端应用程序自动取消注册,则在用户卸载应用程序时会发生这种情况。例如,在iOS上,如果 APNS反馈服务报告APNS令牌无效
- 如果注册令牌过期(例如,Google可能决定刷新注册令牌,或者APNS令牌已过期) 对于iOS设备)
- 如果客户端应用程序已更新,但新版本未配置为接收消息
虽然您可能不会立即收到有关此问题的反馈,但您最终会收到此错误消息,这是您将其从数据库中删除的线索。谢谢您的回答。您认为将令牌(或数据库密钥)保存在本地存储中是一种可靠/安全的方法吗?我不确定您的意思。潜在的问题是什么?