1

我有一个用户NullPointerException在我的一个 BroadcastReceiver 中得到一个堆栈跟踪如下

java.lang.RuntimeException: Unable to start receiver ecm2.android.NetworkReceiver: java.lang.NullPointerException
at android.app.ActivityThread.handleReceiver(ActivityThread.java:2821)
at android.app.ActivityThread.access$3200(ActivityThread.java:125)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2083)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:4627)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NullPointerException
at android.content.ComponentName.<init>(ComponentName.java:75)
at android.content.Intent.<init>(Intent.java:2678)
at ecm2.android.NetworkReceiver.onReceive(NetworkReceiver.java:39)
at android.app.ActivityThread.handleReceiver(ActivityThread.java:2810)

现在显然有些东西是空的,但是它指向的行是一个未决的意图,所以很难判断什么是空的

这是代码

Context c = MainActivity.getContext();
mAlarmSender2 = PendingIntent.getService(c, 0, new Intent(c, EMGNoteService.class), 0); //line that throws the error

基本上我正在尝试取消AlarmManager已设置的内容,因此唯一可能是上下文为空正确吗?

我只是不确定,因为堆栈跟踪说的是关于的ComponentNameIntent所以我不知道意图是否有问题

4

1 回答 1

3

问题确实是我的上下文所以我改变了它并修复了它

于 2012-08-02T17:44:43.000 回答