需要在我的应用程序在后台时获取我的位置

Posted

技术标签:

【中文标题】需要在我的应用程序在后台时获取我的位置【英文标题】:Need to get my location while my app is in the background 【发布时间】:2013-05-02 23:23:08 【问题描述】:

我正在为刚开始的 ios 课程编写一个基于位置的基本警报/通知应用程序。我有位置对象(CLLocation),但我不知道如何在后台检查当前位置。我不担心电池的使用,只需要定期获取当前位置,这样我就可以检查它是否靠近警报位置,然后通知用户。

【问题讨论】:

【参考方案1】:

您可能不担心电池使用情况,但 Apple 会担心,因此您需要使用提供的 Apple 框架。

查看EKAlarm,具体来说:

@property EKStructuredLocation *structuredLocation

你也有CLLocationManager:

- (void)startMonitoringForRegion:(CLRegion *)region

这是CLLocationManager的部分描述:

在 iOS 中, 您向位置管理器注册的区域在 启动您的应用程序。如果在您的 iOS 应用未运行,系统自动唤醒它(或 重新启动它)在后台,以便它可以处理事件。 重新启动时,您之前配置的所有区域都是 在任何位置的受监控区域属性中可用 您创建的管理器对象。

【讨论】:

我只是想获得一个成绩并能够在课堂上演示这个应用程序。我知道这个应用在到期时还没有准备好在应用商店上架。 startMonitoringForRegion 和 didUpdateLocations 我可以将它们放在我的 AppDelegate 中的 applicationDidEnterBackground 下吗? 我想我回答了你的问题。投票和检查;然后发布另一个关于如何使用startMonitoringForRegion:的问题

以上是关于需要在我的应用程序在后台时获取我的位置的主要内容,如果未能解决你的问题,请参考以下文章

0x8badf00d 在后台获取监听位置后崩溃

当应用程序切换到后台时,我的 android 位置服务被终止

即使在终止应用程序后,我们还能获取位置信息吗? [关闭]

Android - 如何在服务的后台获取位置更新

android在后台获取位置并更新listview

如何在我的桌面应用程序中获取当前地理位置? [关闭]