iPhone App在后台运行并将数据发送到服务器

时间:2013-10-17 22:17:07

标签: iphone ios

我打算开发一款应用程序,从iPhone上读取数据使用情况,例如每个应用程序的互联网使用情况,3G,WiFi等。我的问题是:

V1。是否有可能让应用程序在后台运行(即使被杀死)并收集数据并每隔15分钟发送到服务器?

V2。是否有可能让应用程序在后台运行(即使被杀死)并收集数据并在重新打开后将数据发送到服务器?

有些应用程序具有类似的功能:

http://www.mobidia.com/products/takecontrol/

http://xvision.me/dataman

感谢您的帮助。

2 个答案:

答案 0 :(得分:2)

当应用处于suspended模式时,我认为您不允许这样做。该州没有执行任何应用代码。

当您的应用位于background时,虽然您只能执行有限数量的任务。

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

有关详细信息,请查看here

答案 1 :(得分:0)

首先,如果用户强制退出,则无法保持您的应用程序处于打开状态,我相信这就是您被杀的意思。

就后台执行情况而言,请查看这个内容丰富的答案:iPhone - Backgrounding to poll for events

在那个答案中,它说你不能进行递归的beginBackgroundTask调用,但是我已经看到了一个方法,你可以进行调用,然后在任务终止之前启动位置更新。然后立即关闭位置更新并开始另一个后台任务。 Here is a link to that method