2013-01-18 110 views
0

iOS5。我有一个CLLocationManager正确设置,它监听区域进入/退出。 它一切正常。但是,当我杀了我的应用程序,并且我进入了一个区域时,我收到了一个本地通知(它在didEnterRegion方法中定义),并且它再次启动了我的应用程序。这是标准行为还是还有其他事情正在发生?我认为它会在后台启动应用程序,执行didEnterRegion:并在一段时间后再次自杀。我需要做的就是在didEnterRegion内部打一个HTTP电话:didEnterRegion当应用程序未运行时

任何人处理类似的事情?

回答

2

这是预期的行为。 当您的应用程序未运行但为您的应用程序注册地理围栏边界时,它将启动并触发回调。 之后它不会被杀害,除非系统决定,它需要记忆。

不要担心,即使您的应用程序已启动,您的应用程序仍将处于休眠状态,因此不会出现速度/电池/等的损失。

看到文档:

处理过境活动的地区

每当用户的当前位置越过边界区域,该 系统生成适当区域的事件为您的应用程序。如果您的应用程序 已在运行,则这些事件将直接转至任何 当前位置管理器对象的代理。如果您的应用程序未运行,则系统会在后台启动它,以便它可以响应。应用程序可以使用 实施以下方法来处理边界过境点:

相关问题