2011-09-22 24 views
1

该应用程序正在处理位置更新和发送所述位置回服务器。该应用程序不会关闭位置更新。这是设备永久插入电源,所以电池不是问题。如何保证位置更新继续下去?

在设计上,将位置更新无限期继续,或将Android停止在某些时候送他们,例如,如果应用被推出的内存?

如果位置更新不停止,我怎么要求他们以这样的方式,他们将无限期地继续下去?

回答

1

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

在服务的注册LocationListener所以,它的触发位置发生变化时。即使您的服务没有运行,系统也会启动它并执行注册的方法。

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

+0

+1对于'LocationListener',这是一个更好的方式来处理你的场景。 – brc

0

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

  • 创建一个ASyncTask[docs]处理实际更新的发送,否则您的应用程序将是killed
  • 如果应用程序可以失去焦点,您可以创建一个服务,并从上拆除您的应用程序保持它在后台运行。