应用程序终止时停止地理围栏

Posted

技术标签:

【中文标题】应用程序终止时停止地理围栏【英文标题】:Stop geofencing when app terminates 【发布时间】:2015-01-14 01:55:46 【问题描述】:

我想在用户终止应用时停止地理围栏,因为有时用户真的想让角落里的小地理围栏消失。但是,我不能使用 -applicationWillTerminate: 因为该方法没有被一致地调用,并且在发送地理围栏通知时应用程序不再重新启动。我只是在监视有人离开 400 米区域(酒吧或活动周围的区域)。

有什么办法吗?

【问题讨论】:

如果用户已授予您的应用在后台使用位置的权限,那么他们可以从设置中控制它 - 终止应用不是正确的解决方案。没有 100% 保证在您的应用终止时执行的方法 【参考方案1】:

如果您不使用“requestAlwaysAuthorization”定位,地理围栏将在用户终止应用时停止工作。这仅适用于 ios8

根据 Apple Docs -

当应用在前台或后台运行时,区域监控服务会正常传递事件。 (您可以将此服务用于地理和信标区域。)对于已终止的 iOS 应用程序,此服务会重新启动该应用程序以传递事件。使用此服务需要用户“始终”授权”。

【讨论】:

以上是关于应用程序终止时停止地理围栏的主要内容,如果未能解决你的问题,请参考以下文章

地理围栏不再从 ios7 中的终止状态重新启动应用程序?

应用程序在圆形区域应用地理围栏时崩溃

关闭应用程序时的 iOS 7.1 CoreLocation 和地理围栏

应用程序挂起时如何使用 UIApplicationLaunchOptionsLocationKey 监视地理围栏区域

iOS 7.1 地理围栏和 iBeacons 停止工作

应用程序死机时的地理围栏