http://www.android123.com.cn/androidkaifa/656.html by:Android开发网原创
在Android平台中需要反复按周期执行方法可以使用Java上自带的TimerTask类,TimerTask相对于Thread来说对于资源消耗的更低,除了使用Android自带的AlarmManager使用Timer定时器是一种更好的解决方法。 我们需要引入import java.util.Timer; 和 import java.util.TimerTask;
private Timer mTimer = new Timer(true); private TimerTask mTimerTask;
mTimerTask = new TimerTask() { public void run() { Log.v("android123","cwj"); } }; mTimer.schedule(mTimerTask, 5000,1000); //在1秒后每5秒执行一次定时器中的方法,比如本文为调用log.v打印输出。
如果想取消可以调用下面方法,取消定时器的执行
while(!mTimerTask.cancel()); mTimer.cancel();
最后Android123提示大家,如果处理的东西比较耗时还是开个线程比较好,Timer还是会阻塞主线程的执行,更像是一种消息的执行方式。当然比Handler的postDelay等方法更适合处理计划任务。