我正在开发我的第一个Android应用程序。 我希望我的应用程序的用户能够激活“自动更新数据”,这意味着每x分钟应刷新一些数据。我创建了一个由
启动的服务service = new Intent(context, MyService.class);
context.startService(service);
我在服务中使用TimerTask定期刷新数据。
timer = new Timer();
TimerTask tt = new TimerTask() {
public void run() {
refreshData();
}
};
timer.scheduleAtFixedRate(tt,0,interval);
我注意到服务可以不时重启。我怎样才能确保refreshData();每隔一分钟(不多或少)运行?如果用户更改间隔(首选项),如何终止当前计时器(任务)并启动新计时器?现在它似乎开始一个新的,但没有杀死旧的使refreshData()按两个间隔执行。
感谢任何帮助!
答案 0 :(得分:0)
(我是Android新手也是开发人员,所以我带着一点点的意思去采取行动)
好吧,我觉得你对结构有很多想法。有不同的方式与服务进行通信。我认为最好的选择是广播一个意图,使服务接收意图,并根据从意图收到的信息更改间隔。