Android:выполняет код через равные промежутки времени

Мне нужно регулярно выполнять некоторый код (подключаться к серверу и каждую минуту извлекать данные из базы данных MySQL). Для этой цели у меня есть класс синхронизации :

public class Sync {

    static private Handler handler = new Handler();
    Runnable task;

    public Sync(Runnable task, long time) {
        this.task = task;
        handler.removeCallbacks(task);
        handler.postDelayed(task, time);
    }
}

, а в моей деятельности есть :

public void onCreate(Bundle savedInstanceState) {
   ...
    Sync sync = new Sync(call,60*1000);
   ...
}

final private Runnable call = new Runnable() {
    public void run() {
    //This is where my sync code will be, but for testing purposes I only have a Log statement
    Log.v("test","this will run every minute");
    }
};

. Я пробовал это с более коротким периодом времени для тестирования, но он запускается только один раз. Когда он регистрирует сообщение в первый раз, оно также является последним. Кто-нибудь видит, что я здесь делаю? Спасибо!

33
задан Tomáš 'Guns Blazing' Frček 18 April 2012 в 10:34
поделиться