应用程序终止时使用位置更新

时间:2016-01-04 10:59:07

标签: ios location core-location

我正在开展一个项目,我试图在所有州获取位置更新,即使应用程序已终止。我已经使用了所有可能的解决方案,但它仍然无法终止。现在我想澄清一个疑问 - 我正在使用startUpdatingLocation()作为前景和背景。我们知道startMonitoringSignificantLocationChanges()是在任何位置更新的情况下重新启动应用程序的唯一方法。我们可以在applicationWillTerminate()方法中调用“startMonitoringSignificantLocationChanges()”吗?当有任何重要的位置更新时,它会工作并重新启动应用程序吗?请告诉我。

感谢!!

1 个答案:

答案 0 :(得分:1)

您无法在applicationWillTerminate()中执行此操作,因为关闭目前无法返回值。如果您想要始终获取用户位置,请尝试后台模式。

这是Apple文档中的描述:

在这种情况下,传递给应用代理的application:willFinishLaunchingWithOptions:application:didFinishLaunchingWithOptions:方法的选项字典包含密钥UIApplicationLaunchOptionsLocationKey,表示您的应用因位置事件而启动。重新启动后,您仍必须配置位置管理器对象并调用此方法以继续接收位置事件。重新启动位置服务时,会立即将当前事件传递给您的代理。此外,即使在启动位置服务之前,也会使用最新的位置对象填充位置管理器对象的位置属性。

它清楚地告诉你如何获得位置。