在后台::本地通知中接收iOS通知

时间:2013-05-27 07:19:09

标签: iphone ios xcode calendar uilocalnotification

我们正在开发一个类似于原生日历应用程序的iOS应用程序。应用程序同步来自本机日历数据库的数据。它还会在开始时间之前(例如之前10分钟)触发每个日历条目/会议的本地通知。

有人可以帮助我们解决我们面临的以下问题。

1)如果本机日历数据库发生任何更改,我如何确保我的应用程序更新。每当有新会议或重新安排现有会议时,我都希望调用一段自定义代码。我知道这可以通过订阅App Foreground通知来实现,但是即使在应用程序处于后台时也无论如何都要执行代码。

2)每次会议前10分钟触发本地通知的最佳方法是什么?如果在接下来的10分钟内有任何会议,我应该运行后台服务并定期检查吗?或者我应该一次安排所有本地通知。但是在这种情况下,我不确定如何处理在应用程序处于后台或任何新会议出现时会议可以重新安排的情况。

2 个答案:

答案 0 :(得分:2)

  1. 你不能,因为你的应用程序不属于类别 在后台运行。
  2. 您无法运行后台服务 在iOS上,你必须在你的时候设计本地通知 应用正在运行。但要注意最多有64个预定本地 通知。 Als你永远不知道什么时候显示通知,因为这是由iOS而不是你的应用程序处理的。
  3. 最好的选择是使用推送通知,这些将是服务器端,因此没有64个计划限制。使用推送通知选项,当事件发生更改时,服务器必须知道它。因为它是发送通知的人。

    其他选项可以是EventKit,并在用户日历中安排活动。

答案 1 :(得分:0)

你不会喜欢这个答案。在非越狱环境中,答案如下:

1)你不能

2)唯一的选择是立即安排所有会议,但它让您对提到的问题持开放态度。