ios - 是否可以在后台运行 CLLocationManager

标签 ios iphone geolocation cllocationmanager clregion

我想在用户每移动 20 米时检查用户当前位置。所有都处于事件状态和背景。我知道在事件状态下可以这样做。但我想知道在ios中的后台模式。特别想知道苹果是否拒绝这种方法。但在ios7中我认为它可以

实际上我想获取 currant 位置,如果用户移动超过 1km 调用服务 API,如果用户每移动 20m 检查本地数据库弹出一些数据。

我想在事件状态和后台状态下都这样做。 目前我正在使用显着的位置变化和区域监控。但是区域监控的精度较低。我想要至少 20 米的精度。 这就是为什么我尝试采用上述方法的原因。我知道这种方法会消耗大量电池电量。但我想要最好的准确性。 任何人都有想法。

最佳答案

您可以获取用户当前位置,无论是事件状态还是后台状态应用都不会被拒绝。 在 plist 中,您需要设置在后台状态下获取用户位置的请求。设置好后,您的位置管理器代表将继续调用(因此有很多机会快速耗尽电池电量)在一个类/appdelegate 中编写您的位置管理器方法并重用它们,以便您可以轻松检查条件(当每当用户移动时,它都会自动更新用户的位置,因此您可以检查两点之间的距离,如果用户到达膨胀点,则可以提示警报)

希望这会有所帮助..

关于ios - 是否可以在后台运行 CLLocationManager,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22776478/

相关文章:

ios - 使用CloudKit进行增量同步->如何获取有关已删除记录的通知

ios - ChromeCast后台视频播放支持iOS

ios - 如何保护 iOS bundle 文件,如 plist、图像、sqlite、媒体文件

ios - 在适用于 iPad 和 iPhone 的 PhoneGap 中设置单独的方向值

iphone - 没有 aps badge 或 badge = 0 无法清理通知中心?

iOS 即席分发更新

ios - locationManager避免Label中的(空)字符串

android - 当手机到达一组位置时做些什么?

javascript - 如何在 Javascript 中从图像文件数据读取地理位置

ios - 使用 Ionic 包装 Angular2 应用程序 - 地理定位问题