安卓开发NullPointException集合(1)

2/13/2017来源:iOS开发人气:725

今天在调试手机时遇到一个空指针异常,先贴代码记录一下:

FATAL EXCEPTION: main                                                                   PRocess: com.junnuo.didon, PID: 28273                                                                   java.lang.RuntimeException: java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.res.Resources android.content.Context.getResources()' on a null object reference                                                                       at com.loopj.android.http.AsyncHttpResponseHandler.onUserException(AsyncHttpResponseHandler.java:304)                                                                       at com.loopj.android.http.AsyncHttpResponseHandler.handleMessage(AsyncHttpResponseHandler.java:395)                                                                       at com.loopj.android.http.AsyncHttpResponseHandler$ResponderHandler.handleMessage(AsyncHttpResponseHandler.java:510)                                                                       at android.os.Handler.dispatchMessage(Handler.java:102)                                                                       at android.os.Looper.loop(Looper.java:148)                                                                       at android.app.ActivityThread.main(ActivityThread.java:5600)                                                                       at java.lang.reflect.Method.invoke(Native Method)                                                                       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)                                                                       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)                                                                    Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.res.Resources android.content.Context.getResources()' on a null object reference                                                                       at android.view.ViewConfiguration.get(ViewConfiguration.java:364)                                                                       at android.view.View.<init>(View.java:3822)                                                                       at android.view.View.<init>(View.java:3926)                                                                       at android.view.ViewGroup.<init>(ViewGroup.java:583)                                                                       at android.view.ViewGroup.<init>(ViewGroup.java:579)                                                                       at android.view.ViewGroup.<init>(ViewGroup.java:575)                                                                       at android.view.ViewGroup.<init>(ViewGroup.java:571)                                                                       at android.widget.FrameLayout.<init>(FrameLayout.java:84)                                                                       at com.junnuo.didon.view.MatchServiceView.<init>(MatchServiceView.java:0)                                                                       at com.junnuo.didon.ui.home.ContainerFragment$4.onSuccess(ContainerFragment.java:162)                                                                       at com.junnuo.didon.ui.home.ContainerFragment$4.onSuccess(ContainerFragment.java:147)                                                                       at com.junnuo.didon.http.HttpCallBackBean.onSuccess(HttpCallBackBean.java:38)                                                                       at com.junnuo.didon.http.HttpUtil.loadSuccess(HttpUtil.java:241)                                                                       at com.junnuo.didon.http.HttpUtil.access$000(HttpUtil.java:36)                                                                       at com.junnuo.didon.http.HttpUtil$1.onSuccess(HttpUtil.java:183)                                                                       at com.loopj.android.http.TextHttpResponseHandler.onSuccess(TextHttpResponseHandler.java:118)                                                                       at com.loopj.android.http.AsyncHttpResponseHandler.handleMessage(AsyncHttpResponseHandler.java:351)                                                                       at com.loopj.android.http.AsyncHttpResponseHandler$ResponderHandler.handleMessage(AsyncHttpResponseHandler.java:510)                                                                        at android.os.Handler.dispatchMessage(Handler.java:102)                                                                        at android.os.Looper.loop(Looper.java:148)                                                                        at android.app.ActivityThread.main(ActivityThread.java:5600)                                                                        at java.lang.reflect.Method.invoke(Native Method)                                                                        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)                                                                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 

---------------------------------------------------------------我是分割线--------------------------------------------------------------------------

去stackoverflow社区搜索了一下问题,还是找到了答案的 地址:http://stackoverflow.com/questions/39035249/why-my-app-crash-when-i-switch-fragments-fast

小小的翻译一下就是代码仍在执行getContext的时候,此时的上下文对象已经不存在了,由此导致空指针异常问题