在Android中实施位置跟踪

时间:2013-06-19 11:58:11

标签: android

我想在每1分钟跟踪用户位置,并将用户位置存储在数据库中。 如果用户位置没有改变30分钟,那么我必须向用户发出通知,如果用户没有在特定时间关闭应用程序。 例如:晚上8点,我还必须通知用户

跟踪应位于单独的线程中,以便应用程序可以在进行位置跟踪时执行其他任务。

我完全陷入困境,我怎么能为三件事制作单独的线程:

  1. 用于位置跟踪

  2. 30分钟提醒通知

  3. 晚上8点提醒

  4. 如果向用户显示通知,并且位置发生变化,则应删除通知并正常进行跟踪

3 个答案:

答案 0 :(得分:1)

我认为没有必要为此使用线程。 location strategy page上的Android文档定义了如何获取位置的更新,Countdown timer可用于执行您的计时。

答案 1 :(得分:0)

如果每分钟都检查一下这个位置,你的电池寿命就会很长。

无论如何,使用AlarmManager可以完成所有这些任务。您将为下一个事件设置一个时间,当它发生时,即使您的活动在后台,您的代码也会运行。我不确定你的意思是“在晚上8点关闭应用程序”,应用程序不需要看到这些事情发生。

答案 2 :(得分:0)

您需要为此使用服务,并且在服务中您可以用一分钟间隔实现位置监听器,并且对于电池优化,您应该Google Location API。您还可以使用活动识别来查找用户移动。