在应用程序未运行/注销时禁用Apple推送通知



我正在使用apple推送通知发送重要的买入和卖出建议,这是一款日内交易者使用的应用程序——我遇到了一个小问题,我很惊讶我找不到。

我想在用户未登录或关闭应用程序时禁用推送通知。我想到了几种方法来实现这一目标,但似乎都不可行,所以我正在寻找通过APNS服务的解决方案。我的想法是:

  1. 用户登录时启用服务器推送,用户注销时禁用。这样做的问题是,如果应用程序崩溃或用户强制退出应用程序,推送不会被停用

  2. 保持一个会话,如果它死了,禁用推送通知。这样做的问题是,他们可能会登录并让他们的手机处于睡眠状态数小时,应用程序不会轮询服务器以保持会话存活,但由于他们没有明确退出,我想仍然发送这些推送。

是否有办法修改APNS有效载荷说,如果应用程序没有运行,删除推送消息?这就是我想要的:)

我真的很感激任何帮助!谢谢大家!

让应用程序每5分钟左右"ping"一次服务器,如果错过两次ping,则停止发送通知。