2014-09-05 65 views
0

我一直在为我的应用程序放置一个好的架构时遇到麻烦。它需要定期更新GPS(我已经创建了听众,具有更新频率的正确参数)。Android永久GPS请求

当我尝试确定代码的设置位置时,问题就出现了:它应该放在类似服务的地方,因为我想保留它在后台,但似乎服务在主线程上保持运行。此外,我需要确定的是,即使该应用程序被杀害,我也不会失去GPS更新。

因此,解决方案似乎是以下几点:

  1. 服务(能不能在后台运行?)是注册一个监听器,并保持运行。某种报警,如果它杀死
  2. 报警,设置了此服务,任何触发每隔X分钟,注册监听器,等待它的响应,并关闭等待下一个信号

哪种策略应该是更好?当我需要做长时间的任务(比如无限期地接收定期数据)时,有没有什么好的做法?

预先感谢您

回答

0

您可以在自己的过程中运行您的服务。 请参阅“服务流程”,在http://developer.android.com/guide/components/processes-and-threads.html

您在清单中为您安排服务额外的过程中,看到了android:process attribut的service标签的 http://developer.android.com/guide/topics/manifest/service-element.html

+0

它可以确保如果我的服务做一些密集的东西,它将不会显示“这个应用程序没有响应,你想关闭它?”的对话框? – Isaac 2014-09-05 08:10:45