2012-03-06 46 views
1

我正在使用一個應用程序,通過使用Service類在每次運行應用程序時在後臺運行。服務類將在後臺運行。在我的服務類中,我每次都使用一個時間在後臺運行。在這種情況下,我沒有在我的模擬器中出現錯誤,但是如果我運行我的應用程序真正的設備,我正在致命的EXCEPTION Timer-0錯誤。如何解決FATAL EXCEPTION Timer-0?

我已經實現了我的應用程序如下:

public class RepeatService extends Service 
{ 
ArrayList<ShoutMessage> resultMessage; 
private Timer timer = new Timer(); 
private static final long UPDATE_INTERVAL = 30000; 
@Override 
public IBinder onBind(Intent arg0) { 
    return null; 
} 

@Override 
public void onCreate() { 

    pollForUpdates(); 
    super.onCreate(); 
} 

private void pollForUpdates() { 
    timer.scheduleAtFixedRate(new TimerTask() { 
     @Override 
     public void run() { 


      resultShoutMessage = new ParseXml().convertMessages(new Model().getMessages(getID)); 

      for(int i=0;i<resultMessage.size();i++) 
      { 
       String userID = resultMessage.get(i).getUserID(); 
       String userName = resultMessage.get(i).getUserFirstName(); 
       String messageID= resultMessage.get(i).getMessageID(); 
       String userMessage=resultMessage.get(i).getMessageText(); 


      } 

       intent.setAction("com.sample.presentationLayer"); 
       sendBroadcast(intent); // finally broadcast 
     } 
    }, 0, UPDATE_INTERVAL); 

} 


@Override 
public void onDestroy() { 
    timer.cancel(); 

    super.onDestroy(); 
} 

}

當我運行上面的實現我正在如下得到一個錯誤:

01-01 01:18:34.414: ERROR/AndroidRuntime(2049): FATAL EXCEPTION: Timer-0 
01-01 01:18:34.414: ERROR/AndroidRuntime(2049): java.lang.NullPointerException 
01-01 01:18:34.414: ERROR/AndroidRuntime(2049):  at com.fitzgerald.presentationLayer.RepeatService$1.run(RepeatService.java:63) 
01-01 01:18:34.414: ERROR/AndroidRuntime(2049):  at java.util.Timer$TimerImpl.run(Timer.java:289) 

我怎樣才能解決上述問題在我的申請?

請任何機構幫助我

+0

Post full stacktrace ..更多logcat信息。另外如果可能的話發佈完整的服務代碼。 – user370305 2012-03-06 06:16:22

+0

考慮使用'AlarmManager',它比你的設計更好:http://developer.android.com/reference/android/app/AlarmManager.html – 2012-03-06 06:35:18

回答

1

而是它在你的RepeatService.java行號63一個NullPointerExceptionrun()。只需解決它。

+0

該響應來自web服務。我如何處理那個NullPointerException?plzz給出一個想法.... – 2012-03-06 06:14:47

+0

你應該檢查你得到的響應不是NULL,並且如果得到響應,那麼你正確解析它。 – 2012-03-06 06:16:26

相關問題