我正在构建一个客户端 - 服务器应用程序,我需要服务器始终知道当前的客户端位置。
因此,当客户端应用程序处于活动状态时,我会使用CLLocationManager
每10分钟获取一次客户端位置并将其发送到服务器。
我的问题是当应用程序关闭时该怎么办?我知道我可以使用重要的位置更改来在应用关闭时获取位置更新,但是我可以将此位置更新发送到我的服务器而无需启动应用程序吗?我的意思是当应用程序关闭时,我希望它对用户透明,这可能吗?当我获得其中一个位置更新时,UI是否会发生某些事情?
答案 0 :(得分:1)
您的应用程序将列在设置区域中,并显示位置指示器图标,您可以在这些更新发生时接收和处理(发送到服务器)。查看本教程:http://www.mindsizzlers.com/2011/07/ios-background-location/
答案 1 :(得分:1)
在documentation,他们说
系统会自动将应用程序重新启动到 如果有新事件到达,则在这种情况下,传递给应用程序的选项字典:didFinishLaunchingWithOptions:应用程序委托的方法包含密钥UIApplicationLaunchOptionsLocationKey,表示您的应用程序是由于位置事件而启动的。
重新启动后,您仍必须配置位置管理器对象 调用此方法继续接收位置事件。当你 重启位置服务,将当前事件发送给您 立即代表。另外,你的位置属性 位置管理器对象使用最新位置填充 甚至在你开始定位服务之前对象
您可以将位置发送到服务器,而不显示任何UI元素。