我目前正在开发我的第一个 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() 根据两个间隔执行。
任何帮助表示赞赏!