geofencing不再在ios7中重新启动app终止状态?

时间:2014-01-14 09:50:59

标签: ios7 background ibeacon geofencing location-based

我正在开发一个使用ibeacon确定用户是否进入特定区域的应用。 现在我正在使用CoreLocation框架来实现这个基于地理围栏的功能。 我已阅读下面的文件。 https://developer.apple.com/library/mac/documentation/CoreLocation/Reference/CLLocationManager_Class/CLLocationManager/CLLocationManager.html 苹果公司在说: “在iOS中,您在位置管理器中注册的区域会在启动应用程序之间保持不变。如果在您的iOS应用程序未运行时发生区域交叉,系统会自动将其唤醒(或重新启动),以便它可以处理事件。重新启动时,您之前配置的所有区域都可以在您创建的任何位置管理器对象的monitoredRegions属性中使用。“

我发现在ios 7之前就是这样。 从ios 7开始,应用程序将从后台唤醒,但它实际上不再可以从终止状态重新启动(通过双击主页按钮从任务管理器中滑出)。 如果是由于Apple的政策,为什么Apple不更新上述官方文件? 所以我想到了一个ios7的错误,因为即使它在ios6中重新启动,Reminder App(内置应用程序)也没有在ios7中重新启动。 这个问题是由于Apple的政策吗?还是ios7的错误? 谷歌寻求解决方案需要2天多的时间。 关于这个问题的任何想法?

2 个答案:

答案 0 :(得分:1)

文档已经过时了。这是iOS7中的预期行为。 Apple制作了一个明确讨论这一变化的视频。我们的想法是,如果用户明确终止应用程序,则用户不希望它运行。 See this thread.

这是一件大事吗?用户多久会这样做?请记住,如果用户对您的应用程序感到恼火,他们也可以随时卸载它。在iOS6中也是如此。

答案 1 :(得分:0)

iOS 7.1推翻了此政策。即使用户杀死您的应用程序,iOS仍会在跨越该区域时启动您的应用程序。