我想在每1分钟跟踪用户位置,并将用户位置存储在数据库中。 如果用户位置没有改变30分钟,那么我必须向用户发出通知,如果用户没有在特定时间关闭应用程序。 例如:晚上8点,我还必须通知用户
跟踪应位于单独的线程中,以便应用程序可以在进行位置跟踪时执行其他任务。
我完全陷入困境,我怎么能为三件事制作单独的线程:
用于位置跟踪
30分钟提醒通知
晚上8点提醒
如果向用户显示通知,并且位置发生变化,则应删除通知并正常进行跟踪
答案 0 :(得分:1)
我认为没有必要为此使用线程。 location strategy page上的Android文档定义了如何获取位置的更新,Countdown timer可用于执行您的计时。
答案 1 :(得分:0)
如果每分钟都检查一下这个位置,你的电池寿命就会很长。
无论如何,使用AlarmManager可以完成所有这些任务。您将为下一个事件设置一个时间,当它发生时,即使您的活动在后台,您的代码也会运行。我不确定你的意思是“在晚上8点关闭应用程序”,应用程序不需要看到这些事情发生。
答案 2 :(得分:0)
您需要为此使用服务,并且在服务中您可以用一分钟间隔实现位置监听器,并且对于电池优化,您应该Google Location API。您还可以使用活动识别来查找用户移动。