我现在正在使用跟踪用户位置的应用程序。 我希望这个应用程序运行,即使它不在任务列表中(双击主页按钮不显示它)。 与谷歌纬度一样,应用程序不在后台运行。 我认为这篇文档讨论的是当用户按下主页按钮时运行应用程序:http://developer.apple.com/library/ios/#documentation/iphone/conceptual/iphoneosprogrammingguide/BackgroundExecution/BackgroundExecution.html
但如果用户通过双击主页按钮关闭此应用程序会怎么样?我知道google latitude等应用程序仍然在后台运行。那我怎么能这样做呢?
答案 0 :(得分:2)
应用程序能够再次在后台运行 ,以防上次启动时注册了重要的位置更改。如果谷歌纬度启动应用程序,那么他们使用此流程:
significantLocationChangeMonitoringAvailable
startMonitoringSignificantLocationChanges
存在问题,无法从此通知中取消注册的正常方法。我认为只有为用户提供停止监控的选项。我注意到了这一点,通过状态栏右上角的箭头,这意味着某人正在使用位置服务。
答案 1 :(得分:0)
我可以向您保证,谷歌纵横仅在用户运行(和可见)时或在作为后台进程运行时(多任务可用时)更新用户的位置。
Google纬度正在使用location
后台服务,该服务使用手机信号塔来确定应用在后台运行时设备的位置(如您链接的文档中所述)。如果Latitude应用程序不是正在运行的进程,则无法更新该位置。