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

2024-02-04

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

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

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

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


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

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

欲了解更多信息,请参阅iOS 应用程序编程指南 http://developer.apple.com/library/ios/#documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/BackgroundExecution/BackgroundExecution.html%23//apple_ref/doc/uid/TP40007072-CH5-SW4还有位置感知编程指南 http://developer.apple.com/library/ios/#documentation/UserExperience/Conceptual/LocationAwarenessPG/Introduction/Introduction.html%23//apple_ref/doc/uid/TP40009497-CH1-SW1

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

当 didUpdateToLocation 收到消息时,我可以在后台做什么? 的相关文章

随机推荐