2012-03-06 42 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

相关问题