如何确保位置更新无限期地继续?

时间:2011-09-22 18:39:12

标签: android android-location

该应用正在处理位置更新并将位置发送回服务器。该应用不会关闭位置更新。这适用于永久插入电源的设备,因此电池不是问题。

按照设计,位置更新是否会无限期地继续,或者Android会在某个时刻停止发送它们,例如,如果应用程序被推出RAM?

如果位置更新停止,我如何以无限期的方式请求它们?

2 个答案:

答案 0 :(得分:1)

是的,如果手机没有睡着,那么用户进程就会运行。

在服务中注册LocationListener,以便在位置更改时触发它。即使您的服务未运行,系统也会启动它并执行注册的方法。

您应该明确阅读Deep Dive into Location博客,了解Android中所有角度的位置处理。

答案 1 :(得分:0)

这取决于您运行应用的方式。只要应用程序保持专注,除非发生灾难性事件,否则它将继续发送更新。如果应用程序失去焦点,那么您可能会遇到问题,具体取决于您实现位置更新的方式。无论哪种方式,一定要

  • 创建ASyncTask [docs]来处理实际发送的更新,否则您的应用将为killed
  • 如果应用程序失去焦点,您可以创建一个服务,并将其与您的应用程序分离,以使其在后台运行。