我有一个flutter应用程序,用户可以在其中订阅和取消订阅FCM主题。
当前订阅的主题列表是使用shared_preferences包存储的。
该应用程序知道将哪些订阅作为取消订阅选项的唯一方法是查看共享的首选项。
有没有一种方法可以让用户在iOS或android上使用操作系统数据/缓存清除来删除共享的pref,同时FCM订阅仍处于活动状态。在这种情况下,我的应用程序会有"悬挂"订阅,因为它会认为自己没有订阅,但这些主题的通知仍然会到达。
这种情况在iOS或Android上可能发生吗?
这太难了,但它是可能的。从前,我有一个类似你的案子。我所做的是在firebase数据库上创建了一个集合,该集合的安全规则仅为读取权限,而非写入权限。我仔细检查了付款验证,然后通过我的后端服务在firebase上更新收款。
别忘了。永远不要信任任何客户。你必须通过你的后端服务来做到这一点。客户只需阅读即可。