【发布时间】:2014-09-05 16:05:35
【问题描述】:
我在为我的应用程序放置一个好的架构时遇到了麻烦。它需要定期获取 GPS 更新(我已经创建了监听器,更新频率具有正确的参数)。
当我试图弄清楚在哪里设置该代码时,问题就出现了:它应该放在类似服务的地方,因为我想把它放在后台,但似乎服务一直在主线程上运行。此外,我需要确保即使应用程序被终止,我也不会丢失 GPS 更新。
所以,解决方案似乎如下:
- 服务(它可以在后台运行吗?)注册一个监听器,并继续运行。某种警报会在此服务被杀死时设置它
- 每 X 分钟触发一次的警报,注册侦听器,等待其响应,然后关闭等待下一个信号
哪种策略应该更好?当我需要做长时间的任务(比如无限期地接收定期数据)时,android有什么好的做法吗?
提前谢谢你
【问题讨论】: