iphone - 当 didUpdateToLocation 收到消息时,我可以在后台做什么?

标签 iphone ios ios4

据我了解,我的应用程序将接收到以下方法的消息:

- (void) locationManager:(CLLocationManager *)manager
         didUpdateToLocation:(CLLocation *)newLocation 
         fromLocation:(CLLocation *)oldLocation

即使它在后台(如果我设置正确的话)。

在此方法中我可以做什么?我想存储坐标等是可以的,但是我可以发出服务器请求并传递我的坐标吗?

最佳答案

您可以使用标准定位服务,这也需要您在 plist 中声明您的应用需要不间断后台执行。这将允许您的应用程序在后台无限期执行,但会消耗大量电力资源。您可以进行网络服务调用或提供其他方式与用户交互。

对于非导航应用,第二种推荐方法是使用显着变化位置服务,只有当用户位置发生重大变化时,它才会“唤醒”您的应用进入后台模式。在这种情况下,您有有限的时间来完成代码执行,不建议进行 Web 服务调用,因为它们可能无法在有限的时间内完成并导致应用程序被操作系统终止。

有关详细信息,请参阅 iOS Application Programming Guide 还有 Location Awareness Programming Guide

关于iphone - 当 didUpdateToLocation 收到消息时,我可以在后台做什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4748143/

相关文章:

iphone - 如何在 CALayer 上获取触摸事件?

ios - 如何快速删除导航栏的边框?

ios - iPhone 中的 WatchConnectivity 连接 -> 观看方向

objective-c - 像在 Facebook iOS 应用程序的时间轴中那样向 ScrollView 添加一个 float 条

ios - 显示 Xcode 项目名称的 UILocalNotification

iphone - 获取苹果蓝牙设备的名称 "External Accessory framework"

iphone - iOS UINavigationBar 标题文本颜色 (iOS 4)

iphone - ios:解析具有阿拉伯语单词的JSON返回NULL

iphone - 获取当前正在使用的 UIKeyBoardType?或者在 UIKeyboardType 发生变化时捕获

ios - 我希望 UITableViewCell 中的 UItextField 仅在单元格触摸时成为第一响应者