2013-07-29 3 views
0

Я пытаюсь выполнить задачу каждую минуту в своем приложении, для этого я использую следующее. Код находится внутри метода OnCreate:Получение NPE в задаче таймера

 mTimer.scheduleAtFixedRate(new TimerTask() { 
     @Override 
     public void run() { 
      PageTask();// The task I want to exceute every 1 minute. 
     } 
    }, 0, REFRESH_TIME); 

Я объявляющий следующее на уровне класса:

 Timer mTimer = null; 
     long REFRESH_TIME = 10000; 

Однако, когда я запускаю программу, я получаю NPE в mTimer.scheduleAtFixedRate (новый TimerTask ()

собираюсь ли я где-то не так

Вход Cat:

  07-29 15:57:28.906: E/AndroidRuntime(15415): at          com.Geet.CustomizedListView.onCreate(CustomizedListView.java:93) 
     07-29 16:01:16.179: E/AndroidRuntime(15748): FATAL EXCEPTION: main 
     07-29 16:01:16.179: E/AndroidRuntime(15748): java.lang.RuntimeException:    Unable to start activity ComponentInfo{com.Geet/com.Geet.CustomizedListView}:    java.lang.NullPointerException 
     07-29 16:01:16.179: E/AndroidRuntime(15748): at    android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2097) 
     07-29 16:01:16.179: E/AndroidRuntime(15748): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2122) 
     07-29 16:01:16.179: E/AndroidRuntime(15748): at android.app.ActivityThread.access$600(ActivityThread.java:140) 
     07-29 16:01:16.179: E/AndroidRuntime(15748): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1228) 
     07-29 16:01:16.179: E/AndroidRuntime(15748): at android.os.Handler.dispatchMessage(Handler.java:99) 
     07-29 16:01:16.179: E/AndroidRuntime(15748): at android.os.Looper.loop(Looper.java:137) 
     07-29 16:01:16.179: E/AndroidRuntime(15748): at android.app.ActivityThread.main(ActivityThread.java:4895) 
     07-29 16:01:16.179: E/AndroidRuntime(15748): at java.lang.reflect.Method.invokeNative(Native Method) 
     07-29 16:01:16.179: E/AndroidRuntime(15748): at java.lang.reflect.Method.invoke(Method.java:511) 
     07-29 16:01:16.179: E/AndroidRuntime(15748): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:994) 
     07-29 16:01:16.179: E/AndroidRuntime(15748): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:761) 
     07-29 16:01:16.179: E/AndroidRuntime(15748): at dalvik.system.NativeStart.main(Native Method) 
     07-29 16:01:16.179: E/AndroidRuntime(15748): Caused by: java.lang.NullPointerException 
     07-29 16:01:16.179: E/AndroidRuntime(15748): at com.Geet.CustomizedListView.onCreate(CustomizedListView.java:94) 
     07-29 16:01:16.179: E/AndroidRuntime(15748): at android.app.Activity.performCreate(Activity.java:5163) 
     07-29 16:01:16.179: E/AndroidRuntime(15748): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094) 
     07-29 16:01:16.179: E/AndroidRuntime(15748): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2061) 
     07-29 16:01:16.179: E/AndroidRuntime(15748): ... 11 more 
+1

вы инициализирован таймер 'mTimer = новый таймер() '? – Raghunandan

+0

Человек, я так тупой! – user2613996

ответ

2

Я думаю, вы не инициализирован таймер

 mTimer = new Timer(); 

Вы можете проверить это соединение в качестве примечания

Android Thread for a timer

+0

Кажется, мне нужен кофе, спасибо тон! – user2613996

+0

@ Stacks28 я удалил комментарий. – Raghunandan

+0

@ Raghunandan:) np Я просто сказал, что вы заслуживаете +1 – KOTIOS

Смежные вопросы