Android使用Handler的postDelayed(Runnable, long)方法实现定时任务

近期由于公司领导需要将公众号的运营数据放到公司的50寸的微鲸智能电视机上播放,所以一开始是找设计作图,设计问后台要数据,然后做成图片放到电视机上。但是数据是不断更新的,所以设计作图也做的很郁闷。所以我也就顺手做了个app用来展示,顺便解放了设计。当然,功能很简单,就一个界面,背景图是设计原先做的图,然后他将数据扣掉,我在需要添加数据的地方添加几个TextView,然后后台给我一个接口,我这边联网获取数据,每分钟更新一次。

好了,废话说了那么多了,现在主要说说如何实现每分钟更新一次吧,首先创建Handler对象:

1
private Handler mHandler = new Handler();

然后是Runnable,在Runnable的run()方法中调用mHandler.postDelayed(this,60000),实现每隔1分钟执行一次。

1
2
3
4
5
6
7
8
Runnable runnable = new Runnable() {
@Override
public void run() {
showData();
// 循环调用实现定时刷新界面
mHandler.postDelayed(this, 60000);
}
};

然后启动定时器即可:

1
mHandler.postDelayed(runnable, 1000);
如果觉得本文对你有帮助,请支持我!