0

当我们需要对服务器进行后台更新以响应位置管理器更新时,我试图了解应用程序的生命周期。

我们每 1 公里跟踪一次用户的位置,并且我们需要在每次更新到达我们时将位置报告回我们的服务器。如果我们发送失败,它会缓存在核心数据中,并根据需要包含在下一次更新中。

但是,我们不确定操作的生命周期。当更新到达时,应用程序会从后台唤醒,但是当我们使用 AFNetworking 启动基于该操作的异步 HTTP 操作时,我们有点担心该异步操作将如何表现,因为应用程序在中间再次处于非活动状态的异步操作。

[operation setShouldExecuteAsBackgroundTaskWithExpirationHandler]我知道我们可以通过使用AFNetworking的一部分来请求宽限时间,这应该可以正常工作。

但是,这会延续到未来的 iOS 更新中吗?

感谢您提供有关其工作原理的任何见解...

4

1 回答 1

0

据我所知,在didUpdateToLocation方法上你可以做任何事情,所以尝试不会有坏处。我还建议检查这个问题:

了解iOS中用户位置的后台跟踪

除了 iOS7,幸运的是后台和多任务处理会有显着的改进,来自Apple 的开发者门户

通过采用 iOS 7 中新的多任务 API,使您的应用程序的内容保持最新。新服务允许您的应用程序在后台更新信息和下载内容,而不会不必要地消耗电池电量。更新可以在机会性的时间发生,并根据使用情况智能安排,因此您的应用可以在用户需要时在后台更新内容。

但它现在处于 NDA 之下,所以我建议登录开发者论坛并阅读相关内容。

于 2013-09-05T13:49:58.557 回答