建筑问题:经常性事件的设计

时间:2014-11-10 08:20:50

标签: ios xcode architecture recurring

我需要在我们的应用程序中有一个逻辑,它允许定义定期事件(例如,每个星期二,每月的第一天),然后导致应用程序中的特定操作。

我认为UILocalNotification是一个好主意,但是在这个课程中我也会向用户发送通知,我想在应用中处理事件(如果应用不在线,然后可能是下次应用程序启动时)

另一个想法是设置一个包含事件的列表,并在每次应用程序启动时检查,事件是否到期 - 但这看起来很老式 - 希望有更好的东西。

非常感谢任何建议

1 个答案:

答案 0 :(得分:0)

您肯定希望在您的情况下使用UILocalNotification,它将完全满足您所描述的需求。

既然你说过,只有当应用程序处于活动状态时才会触发事件( in foreground ),你必须添加一些自定义逻辑来实现这一点,但这不是一项非常困难的任务,你有多个选择。

我建议您使用AppDelegate应用生命周期方法,在适当的时候安排和删除通知。

UIApplicationDelegate协议包含两种相关的方法(实际上更多一些,但这两种方法将为您完成工作......)。首先我们有applicationWillEnterBackground:,您应该删除所有当前安排的通知。在方法applicationDidBecomeActive:中,您可以重新安排通知,因为每次应用再次到达前台时都会调用此通知。

如果您还有其他问题,请与我们联系:)