我的核心位置代码工作正常,所有代表都正常工作,我可以在mapview中查看确切的位置。现在我希望这个应用程序继续在后台运行,我在互联网上搜索,发现只有少数服务允许在后台工作,其他服务暂停几分钟。为了启用thos服务,我设置了uibackgroundmode = location
的标志,我的核心位置代表也在工作,但仍然为什么我的应用程序在运行20分钟后暂停?
答案 0 :(得分:0)
为什么这不起作用有几个原因。首先尝试the answer的this question:
- 指定位置背景模式
- 使用UIApplication在后台使用NSTimer:beginBackgroundTaskWithExpirationHandler:
- 如果n小于UIApplication:backgroundTimeRemaining它可以正常工作,如果n更大,位置管理器应该 在没有剩余时间之前再次启用(和禁用) 避免后台任务被杀死。这确实有效,因为位置 是三种允许的后台执行类型之一。