当我的iphone应用程序处于后台模式时,我需要有以下内容才能工作。
1.运行时钟。
2.每隔15分钟与服务器通信一次,以获取服务器时间和另一个值。
3.需要在后台模式下开始下载数据。
无论这些是否可能,我都搜索了很多。请确认这些。
我正在开发一个涉及门票预订系统的iPhone应用程序。我将我的应用程序注册为基于位置的信标,因为它使用的是用户在后台获取的位置。
我的问题是我需要在后台模式下在我的应用程序中运行一个内部时钟。我需要在核心位置委托方法中编写内部时钟的代码,以便内部时钟也将与位置bsed服务一起运行。我的应用会被拒绝吗?这样做有什么不对吗?
我需要在我的应用程序中获得正确的时间,这样我才能运行这个内部时钟。我可以使用NSDate,但它将返回设备时间。任何人都可以更改设备时间。因此,一旦有人转换,错误的时间将影响应用程序的流畅运行。好心的有人建议在不运行内部时钟的情况下获得正确的时间?
发布于 2012-02-29 20:32:48
我想你想要在你的应用程序不在前台运行的情况下做到这一点--如果你不使用一些技巧,比如播放一个空的音频文件和假装成一个音乐播放器之类的,这是不可能的。
在iOS中,你只能在你的应用程序运行在前台时执行它的代码,除了一些特定的任务,比如VOIP或音乐播放。
如果你想在你的应用在前台运行时这样做,只需使用NSTimer和一个后台进程来加载,就像建议的那样。但你也应该防止iPhone在1分钟后进入睡眠模式,否则当用户在这15分钟内没有积极使用应用程序时,它将不起作用。
发布于 2012-02-29 20:12:38
这是可能的,你需要做的是,
1]运行后台线程,设置一个15分钟的NSTimer。
2]设置repeat:YES,每15分钟调用一次。
3]开始下载您需要的内容!
如果我像你这样坚持下去,我会这样做的!
https://stackoverflow.com/questions/9498472
复制相似问题