迅捷的背景工作

时间:2018-05-29 12:53:45

标签: ios swift

我是iOS开发的新手,我在当前的项目中使用Swift。 我尝试实现与Android相似的功能。当应用程序关闭/最小化时,我会尝试运行后台服务,该应用程序每2秒执行一次,以通知用户应用程序仍在后台运行并检查服务器的状态。

我怎样才能实现这一目标?我尝试过使用"后台获取"方法,但它不会每2秒执行一次。

如果重要,后台服务的运行时间不会超过5分钟。

2 个答案:

答案 0 :(得分:0)

不,你不能这样做。你可以做的是,在 applicationDidEnterBackground 中调用一项服务,让你的服务器知道你的应用程序处于后台或被杀死(你将花费很少的时间来执行它,大约需要3-5秒)。

答案 1 :(得分:-1)

您所描述的Android应用程序可能会过早耗尽设备的电池电量。这就是为什么Apple将后台执行限制在一组明确定义的任务中的简单原因:

  • 在后台播放用户可听内容的应用,例如音乐播放器应用
  • 在后台录制音频内容的应用
  • 随时向用户通知其位置信息的应用,例如导航应用
  • 支持互联网协议语音(VoIP)的应用
  • 需要定期下载和处理新内容的应用
  • 从外部附件接收定期更新的应用

此列表取自Apple对后台任务的官方说明:Background Execution