Задача Android Timer не ждет запланированного времени задержки

Задача таймера не ожидает запланированного времени задержки. Я хочу отложить проверку сети на 10 секунд, но она выполняет действие в течение нескольких секунд без ожидания. Будем признательны за любую помощь.

int i = 0;
public void timertask()
    {

        while(i < 5){

        Handler handler = new Handler(); 
        handler.postDelayed(new Runnable() {
                public void run() {
                if(isNetworkConnected()) // Some method to check net connection
                 {
                     download(); //Method to download
                 }
            }
        }, 10000);

        System.out.println("i  = "+i);
        i++;
        }

    }

person Kamal Trivedi    schedule 15.03.2012    source источник


Ответы (1)


Попробуй это.

TimerTask doAsynchronousTask;
    final Handler handler = new Handler();
    Timer timer = new Timer();

    doAsynchronousTask = new TimerTask() {

        @Override
        public void run() {

            handler.post(new Runnable() {
                public void run() {
                     if(isOnline){// check net connection
                     download(); //Method to download
                    }

                }
            });

        }

    };

    timer.schedule(doAsynchronousTask, 0, 10000);// execute in every 10 s
person Dinesh Anuruddha    schedule 15.03.2012