Проблема с таймером и временной задачей: «Timer.class не включено android.jar «и «Приложение неожиданно остановилось»?

#java #android #timer #timertask

#java #Android #таймер #временная задача

Вопрос:

Итак, я пытаюсь создать, по сути, «прямую трансляцию», и мой код показан ниже. В принципе, я получил ошибку «Приложение неожиданно остановилось», поэтому я отладил. Когда я отлаживал, он сказал «Timer.class не включено android.jar «. Я знаю, что мой статический метод refreshFeed () работает отлично (тестировал его без таймера), так что этого не может быть. Я чего-то здесь не понимаю? Мы высоко ценим любую помощь!

 Timer time = new Timer();
    TimerTask refresh = new TimerTask(){
        public void run(){
            feedEntry.refreshFeed();
        }
    };
    time.scheduleAtFixedRate(refresh, 0, 10000);
  

Комментарии:

1. какой класс Timer вы используете?

2. Дэвид, я использовал и использую класс Timer из java.util

Ответ №1:

Оба таймера и TimerTask присутствуют в пакете java.util.

Что вам нужно сделать, так это использовать обработчик. Прочитайте об обработчике, если вы новичок в Android. http://developer.android.com/reference/android/os/Handler.html

 Handler handler = new Handler();


    t = new Timer();
    timeTask = new TimerTask() {
        public void run() {
                handler.post(new Runnable() {
                        public void run() {
                            feedEntry.refreshFeed();
                        }
               });
        }};

        t.scheduleAtFixedRate(timeTask, 0, 1000);
  

Комментарии:

1. Спасибо, Хеллбой! Сработало как по волшебству! 🙂