我刚刚收到第一个空指针异常报告,这对我来说毫无意义......
java.lang.NullPointerException
at com.kd7uiy.hamfinder.Subjects.DxccSubject.a(Unknown Source)
at com.kd7uiy.hamfinder.Subjects.AbstractSubject.writeToParcel(Unknown Source)
at android.os.Parcel.writeParcelable(Parcel.java:1254)
at android.os.Parcel.writeValue(Parcel.java:1173)
at android.os.Parcel.writeMapInternal(Parcel.java:591)
at android.os.Bundle.writeToParcel(Bundle.java:1627)
at android.os.Parcel.writeBundle(Parcel.java:605)
at com.kd7uiy.hamfinder.Broker.writeToParcel(Unknown Source)
at android.os.Parcel.writeParcelable(Parcel.java:1254)
at android.os.Parcel.writeValue(Parcel.java:1173)
at android.os.Parcel.writeMapInternal(Parcel.java:591)
at android.os.Bundle.writeToParcel(Bundle.java:1627)
at android.os.Parcel.writeBundle(Parcel.java:605)
at android.app.ActivityManagerProxy.activityStopped(ActivityManagerNative.java:2260)
at android.app.ActivityThread$StopInfo.run(ActivityThread.java:3186)
at android.os.Handler.handleCallback(Handler.java:725)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5233)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:795)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:562)
at dalvik.system.NativeStart.main(Native Method)
引用的函数是这样的:
@Override
Bundle packageContents() {
Bundle out = new Bundle();
out.putInt("State", getState());
return out;
}
请注意,NPE 不在getState()
. 怎么可能导致 NPE?我唯一能想到的就是这个类实际上是在调用函数的过程中被销毁的,但这并没有真正的意义。有任何想法吗?
只是为了好玩,这里是关于getState
. 它是抽象主题的一部分,整个功能如下:
Type mState = null; //Defined at the class level
public Type getState() {
return mState;
}
AbstractSubject 是一个泛型类,在 DxccSubject 的情况下,类型是 Integer。