我需要一段代码,用于每天00:00运行的Xcode (obj-c)。
这是因为我的服务器每天都会更新数据,我希望我的应用程序与更新同步。
我正在考虑做一个每分钟运行的计时器并检查时间(来自互联网,不电话时间),但似乎可能有更高效的方式。
帮助或指示真的很感激!
感谢
答案 0 :(得分:0)
使用Mac上的日历应用。每天0:00设置一个定期活动。在您选择警报类型的位置,您可以选择打开文件的选项(而不是弹出窗口等)。选择您的应用作为要打开的文件。
答案 1 :(得分:0)
当应用程序变为活动状态时,注册本地通知(UILocalNotification)以在午夜触发。
然后,您可以在应用代表-application:didReceiveLocalNotification:
然后,您可以在应用程序通过调用UIApplication方法-cancelLocalNotification:
答案 2 :(得分:-1)
我认为甚至不需要在这里使用通知。通知通常是尽力而为,并不保证交付。这可以通过几个简单的步骤完成。
在iOS应用中保存lastUpdated时间。可能在NSUserDefaults中,或者如果你使用的是本地数据库,你也可以将它存储在那里。
每次用户启动应用程序时,请检查自上次更新以来经过了多长时间。
如果超过24小时,则对您的服务器进行API调用,并检查是否有可用的新更新(您可以从服务器时间戳确定)。获取最新数据(可能只有delta差异而不是所有内容)。
更新iOS应用中的lastUpdated时间。