Để lặp lại tác vụ, bạn có thể sử dụng
new Timer().scheduleAtFixedRate(task, runAfterADelayForFirstTime, repeaingTimeInterval);
gọi nó như thế
new Timer().scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
}
},500,1000);
Đoạn mã trên sẽ chạy lần đầu tiên sau nửa giây (500) và lặp lại sau mỗi giây (1000)
Ở đâu
nhiệm vụ là phương thức được thực thi
sau thời gian thực hiện ban đầu
( khoảng thời gian để lặp lại việc thực hiện)
Thứ hai
Và bạn cũng có thể sử dụng CountDownTimer nếu bạn muốn thực thi số lần Nhiệm vụ.
new CountDownTimer(40000, 1000) { //40000 milli seconds is total time, 1000 milli seconds is time interval
public void onTick(long millisUntilFinished) {
}
public void onFinish() {
}
}.start();
//Above codes run 40 times after each second
Và bạn cũng có thể làm điều đó với runnable. tạo một phương thức runnable như
Runnable runnable = new Runnable()
{
@Override
public void run()
{
}
};
Và gọi nó theo cả hai cách
new Handler().postDelayed(runnable, 500 );//where 500 is delayMillis // to work on mainThread
HOẶC LÀ
new Thread(runnable).start();//to work in Background