删除 iOS 应用后保存推送通知数据

Posted

技术标签:

【中文标题】删除 iOS 应用后保存推送通知数据【英文标题】:save push notification data after deleting iOS app 【发布时间】:2012-03-12 08:14:36 【问题描述】:

我在 ios 上测试推送通知时遇到了这种情况。 当用户注册接收远程通知时。他添加了条件列表,当实现用户应该收到通知时。我将此条件列表保存在设备上的 sqlite 文件中。如果用户删除了应用程序,这个列表就消失了。

处理此问题的最佳方法是什么:

将条件列表保存在服务器上,这样如果用户重新安装了应用程序,他 可以使用他的设备令牌获取最后一个列表并继续接收 来自服务器的通知。 如果用户删除应用程序并重新安装它,他应该看不到旧的 通知。

感谢您的帮助, 在此先感谢

【问题讨论】:

您知道如何知道用户何时重新安装了应用程序吗? 如果服务器上有通知列表,我可以检查应用程序何时启动。 当用户卸载应用时会怎样?每次应用程序启动时,您是否需要检查服务器上是否有通知?如果您不需要在每次应用程序启动时检查服务器,则效率很高,仅在用户卸载应用程序并在之后再次安装时检查。那么您怎么知道用户何时卸载了该应用程序? :) 我面临同样的问题。 如果您可以将这些值存储在 plist 中并将其备份到 iCloud 帐户。 我在文档目录中创建了一个文件来保留标志。当我从服务器读取列表时,我将其设置为是。删除应用程序并重新安装时,此文件不存在,因此我再次从服务器读取列表。 【参考方案1】:

将条件列表保存在服务器上,这样如果用户重新安装应用程序,他可以使用他的设备令牌获取最后一个列表并继续接收来自服务器的通知。

这是一个不错的选择。

如果用户删除了应用并重新安装,他应该不会看到旧的通知。

在默认 plist 中保留一个标志为 NO。在第一次启动时检查用户是否已经使用设备令牌读取了服务器中的通知。然后将标志设置为是。因此,当用户下次重新安装应用程序时,您可以提供最新通知,因为已读通知列表在您的服务器上是安全的。

愉快的编码

【讨论】:

以上是关于删除 iOS 应用后保存推送通知数据的主要内容,如果未能解决你的问题,请参考以下文章

删除并重新安装应用后,重新生成推送通知权限的 iOS 系统警报

如何从我的 iOS 应用程序中删除推送通知?

5 秒后自动为我的应用删除收到的推送通知

保存解析通知 - iOS

保存收到的远程推送通知 - ios

如何在特定时间从 iOS 通知中心自动删除推送通知?