我正在使用 CoreLocation 来确定用户的位置以计算距离并在地图上显示路线。为了最大限度地减少电池使用量,我在获得位置后关闭 GPS,并在 1 分钟后再次打开它。当应用程序处于活动状态时,一切正常,但在将其发送到后台并关闭 GPS 后,应用程序似乎根本处于非活动状态,它不输出任何内容(使用NSLog()
)。我在info.plist
文件中添加了指令以允许应用程序在后台运行。当我不在后台关闭 GPS 时,该应用程序在前台工作以及在前台工作。
所以我的问题如下:是否总是需要在后台打开 GPS 以防止应用程序被挂起或有另一种解决方法(因为打开的 GPS 会耗尽电池电量)?
PS 我对 iOS 和移动开发完全陌生,所以也许有一些我必须知道的技巧。