即使应用程序没有运行,如何使用Geofence?

我正在创build一个位置感知应用程序。 我已经能够创buildgeofences,当我在我的iPhone中testing它时,我注意到当应用程序在前台和后台运行时调用calllback方法-didEnterRegion-didExitRegion 。 但是,当我杀了应用程序(意思是应用程序状态是“没有运行”)的方法callback没有被调用。

那么,我在这里错过了什么? 有什么configuration,我需要做的? 任何思想家伙? 谢谢!

这是正确的行为,取决于你如何“杀死”应用程序。 如果您通过从多任务视图向上滑动来停止应用程序(双击主屏幕),则iOS 7会将其解释为意味着您不希望该应用程序根本无法在前台或后台运行。 如果在设备需要更多内存的情况下由于处于后台而导致应用“死亡”,那么它将继续以后台模式运行。

参考这个答案 – 区域监视在ios 7

为了testing,您可以使用Xcode停止应用程序,在应用程序暂停时模拟内存不足的情况,或者为了testing目的而调用exit()。