在背景中关闭GPS

时间:2012-12-02 16:57:02

标签: ios5 gps core-location background-process

我正在使用CoreLocation来确定用户计算距离的位置并在地图上显示路线。为了最大限度地减少电池使用量,我在获取位置后关闭GPS并在1分钟后再次打开GPS。当应用程序处于活动状态时,一切正常,但在将其发送到后台并关闭GPS后,应用程序似乎完全处于非活动状态,它不会输出任何内容(使用NSLog())。我已将指令添加到info.plist文件以允许应用程序在后台运行。当我不在背景中关闭GPS时,该应用程序可以在前台工作。

所以我的问题如下:GPS是否总是需要在后台打开以防止应用程序暂停或有另一种解决方法(因为转动的GPS会耗尽电池)?

P.S。我是iOS和移动开发的新手,所以也许我必须知道一些提示。

1 个答案:

答案 0 :(得分:1)

请参阅http://developer.apple.com/library/ios/#documentation/iphone/conceptual/iphoneosprogrammingguide/ManagingYourApplicationsFlow/ManagingYourApplicationsFlow.html

Apple一般不支持长时间运行的后台任务 这仅适用于特定任务:

音频, 地点, VOIP, 报刊亭的内容, 外部附件, 蓝牙中心和 蓝牙周

如果您不使用任何此类内容,您的应用可能会被暂停 在您的情况下,ypu指定了位置,但禁用了位置更新。然后对于苹果,没有理由让你的应用程序保持在后台模式。