IOS在固定时间间隔内安排行动

时间:2014-04-21 16:35:00

标签: ios objective-c

我正在开发一个应用程序,我希望它安排在固定的时间间隔内完成一个动作,比如5分钟,即使应用程序已关闭。

2 个答案:

答案 0 :(得分:2)

如果已关闭(即已终止)

如果它在后台仍然无法安排自己按固定间隔运行 ,但它可以响应某些外部事件并由操作系统自行决定运行。

您可以在应用关闭之前发布多个本地通知,然后如果用户点击一个,那么您的应用就会运行。但是每5分钟向用户发布一次通知将是一个绝对令人震惊的坏事,可能会导致应用程序被应用程序商店拒绝。

如果您的频率,则存在某些选项,例如本地通知和推送通知以及后台提取,这不是常规的,而是不规则的。但是5分钟的时间很短,所以完全没有任何解决方案。

总之,有: a)绝对无法以常规方式在后台安排某些事情(所有替代方案都是不规则的:本地推送取决于用户输入,远程推送取决于通知的交付时间;后台提取取决于当操作系统决定它将执行你的应用程序等。等 b)在频繁的基础上不定期地安排某些事情是不可能的

答案 1 :(得分:0)

首先,当应用程序在前台运行时,您可以使用NSTimer在特定时间间隔后执行一组操作。 其次,当应用程序在后台运行时,您无法执行所有类型的操作,但是您可以执行以下操作,

  1. 播放音频
  2. VOIP服务
  3. 定期从网络中获取内容 基础。
  4. 使用远程通知作为下载新内容的信号 可从网络获得。
  5. 最后两种后台模式可以在后台启动或恢复您的应用并执行必要的操作。但是除了每种背景模式的操作之外的任何操作都将导致应用商店拒绝。所以,如果你的操作符合其中任何一个,你就可以了,

    有关详情,请查看背景模式https://developer.apple.com/library/ios/documentation/general/Reference/InfoPlistKeyReference/Articles/iPhoneOSKeys.html

    下的此链接