【问题标题】:FATAL EXCEPTION: Timer-0 java.lang.NullPointerException致命异常:Timer-0 java.lang.NullPointerException
【发布时间】:2012-05-30 16:52:06
【问题描述】:

我在 oncreate() 中有一个计时器,例如:

final Timer timer1 = new Timer();
timer1.schedule(new TimerTask() {
    public void run() {
        sendSMS();
    }
}, 20000);

sendSMS() 方法如下:

private void sendSMS(){
    float test2;
    test2 = reallocation.getAccuracy(); //-> This is the line where logcat says.... NullPointerException
    ....
}

logcat 说:

05-30 18:32:26.962: W/dalvikvm(741): threadid=9: thread exiting with uncaught exception (group=0x4001d5a0)
05-30 18:32:26.972: E/AndroidRuntime(741): FATAL EXCEPTION: Timer-0
05-30 18:32:26.972: E/AndroidRuntime(741): java.lang.NullPointerException
05-30 18:32:26.972: E/AndroidRuntime(741):  at com.eljoom.df.ActionGPS.sendSMS(ActionGPS.java:280)

在网上搜索之后,我相信我需要一个计时器处理程序......但我不知道如何实现它。

有人可以让我走上正轨吗?!

【问题讨论】:

  • 你的重新分配数据类型是什么,你初始化了吗?
  • 我将重新分配设置为 Location: Location reallocation=null;
  • 那么您刚刚回答了您的问题,正如 assylias 所说,重新分配为空。你不能调用 reallocation.getAccuracy() 因为 ... reallocation 是 null :)。

标签: java android handler fatal-error


【解决方案1】:

我将重新分配设置为 Location: Location reallocation=null; – user1404924 3 分钟前

您设置了重新分配 =null。你不能调用重新分配的方法 reallocation.getAccuracy();因为您还没有 obj 的实例。

我建议你看看 LocationManager 类。您可以使用特定的位置源从那里请求位置 http://developer.android.com/reference/android/location/LocationManager.html

【讨论】:

  • 我有...但我忘了做:reallocation= lm.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);谢谢我在正确的轨道上!! :D 谢谢
【解决方案2】:

重新分配是未初始化的,所以它取空值,对象的默认值。

【讨论】:

  • 正确的是问题所在,我解决了它:D ...谢谢我结束了这个问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-01-31
  • 2014-04-15
  • 1970-01-01
  • 2015-07-22
  • 1970-01-01
  • 2011-07-12
相关资源
最近更新 更多