Pour répéter la tâche, vous pouvez utiliser
new Timer().scheduleAtFixedRate(task, runAfterADelayForFirstTime, repeaingTimeInterval);
appelle ça comme
new Timer().scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
}
},500,1000);
Le code ci-dessus s'exécutera la première fois après une demi-seconde (500) et se répétera après chaque seconde (1000)
Où
tâche étant la méthode à exécuter
après le temps de l'exécution initiale
( intervalle de temps pour répéter l'exécution)
Deuxièmement
Et vous pouvez également utiliser CountDownTimer si vous souhaitez exécuter un nombre de tâches plusieurs fois.
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
Et vous pouvez également le faire avec runnable. créer une méthode exécutable comme
Runnable runnable = new Runnable()
{
@Override
public void run()
{
}
};
Et appelez-le de ces deux façons
new Handler().postDelayed(runnable, 500 );//where 500 is delayMillis // to work on mainThread
OU
new Thread(runnable).start();//to work in Background