是否可以在IOS中将用户位置与背景中的特定位置保持距离?

时间:2012-07-26 14:40:17

标签: iphone ios ios5

当应用程序处于后台时,我需要计算从用户位置到特定位置的距离,并根据该位置获取本地通知。

后台位置跟踪是完全可能的,我已经完成了,但是是否可以执行一段代码,包含一些条件检查并基于该更新并获得本地通知?

我没有得到任何适当的解决方案。有没有办法这样做?

你能帮我吗?

3 个答案:

答案 0 :(得分:1)

Location Awareness Programming Guide开始。你需要知道的大部分内容都在那里。 (对于AppStore应用程序,大多数不在其中的东西根本不可能。)另请参阅iOS App Programming Guide中的跟踪用户位置。

您所描述的最佳工具可能是“基于形状的区域”。您基本上可以在地图上绘制一个框并说“当用户进入或离开此框时,请告诉我。”如果可能的话,这是你应该使用的工具。它对电池寿命的影响最小。

如果您无法以任何其他方式解决问题,请使用startUpdatingLocation请求后台位置投放(以及Info.plist中的相应背景模式;请参阅上述文档)是合法的。在您徒步旅行时跟踪您的路线的应用程序将适合此类设置。但是如果可能的话,你应该避免它,因为这是一个主要的电池消耗。

答案 1 :(得分:1)

是的,你绝对可以做到这一点。我现在正在一个应用程序中这样做。如前所述,使用重要的位置更改或区域,以尽可能地减轻用户电池的压力。

我们观察区域(以及设备不支持区域的重要位置变化)然后检查一些事情并在需要时发出本地通知。

我们从一个基本原型开始来证明这个概念,我强烈建议这种方法来熟悉位置和通知框架。

答案 2 :(得分:0)

您需要在后台更新重要位置:http://mobile.tutsplus.com/tutorials/iphone/ios-multitasking-background-location/。然后,您需要根据该位置创建位置通知。

我的问题是我不确定您是否可以在后台创建本地通知。