在android服务中的单独线程中运行位置更新
在决定如何执行后台服务任务时,我有点困惑。下面是我的服务的样子 Android服务(在后台有两个任务要做)在android服务中的单独线程中运行位置更新,android,service,location,runnable,Android,Service,Location,Runnable,在决定如何执行后台服务任务时,我有点困惑。下面是我的服务的样子 Android服务(在后台有两个任务要做) 注册locationListener,当收到新位置时,对其进行处理以确定是否为最佳位置 每10分钟轮询一次服务器,以检查是否有任何服务器端更改到远程数据库 现在,我不希望这两项任务为时间和资源而争斗。所以我计划同时运行这两个。对于轮询服务器,我使用的是重复timerTask,但是对于LocationListener,我应该使用什么 是否可以使用java runnable处理带有一些逻辑的新
如果你认为我目前的想法有任何问题,请为我的要求提出一些新的建议 在文档中,我看不到任何东西表明您不能注册在您的服务中运行的LocationListener: 这是一个带有答案的类似问题,您应该阅读: “现在我不希望这两项任务在时间和资源上发生冲突。因此我计划同时运行这两项任务。” ^含糊不清的陈述之后是一个看似违反直觉的计划。如果你能具体说明“时间”和“资源”的含义,那么你可能会得到一些有用的反馈 简短答复: 对注册LocationListener,当位置更新可用时将调用它。它是一个监听器,无论你注册到什么地方,它都会在需要时被调用——你不需要自己调用它。最佳实践是不要在TimerTask上重复一次,而是使用一次放炮,该放炮由每次滴答声调用的代码重置
至于免费代码,也许你应该雇佣一个人来为你做艰苦的工作?这将在Android社区创造另一份工作,并降低你尝试不太精通的东西的风险。否则,请动手并尝试以您认为最有效的方式实施,如果遇到特定问题,请返回堆栈溢出。straya:谢谢您的回复。但从您的回答来看,您似乎认为任务和位置更新任务是相同的。目前,我没有使用TimerTask进行定位。但计时器任务用于从远程Web服务器获取一些数据库更新。可能是在运行timerTask my location侦听器时调用的。这就是为什么我想实现这个线程。如果你能对我的新澄清发表意见。。这将对我有帮助…不,我不认为它们是一样的。如果你认为这就是我根据我所写的内容所想的,那么你这边就有问题了。重新仔细阅读我说的话。注册侦听器,让它做自己的事情。设置TimerTask,让它完成它的任务。如果它们“同时”运行(让我觉得你在隐瞒重要信息),你会在意什么