java - How to read Android crash log? -
java - How to read Android crash log? -
i have published first android app on google play store few days ago. crash log available in developer console , trying find out caused crash. although un-obfuscated stack trace have difficulties understand crash log:
java.lang.runtimeexception: unable start activity componentinfo{com.example.myapp/com.example.myapp.ui.addresseditor.addresseditoractivity}: java.lang.nullpointerexception @ android.app.activitythread.performlaunchactivity(activitythread.java:2184) @ android.app.activitythread.handlelaunchactivity(activitythread.java:2233) @ android.app.activitythread.access$800(activitythread.java:135) @ android.app.activitythread$h.handlemessage(activitythread.java:1196) @ android.os.handler.dispatchmessage(handler.java:102) @ android.os.looper.loop(looper.java:136) @ android.app.activitythread.main(activitythread.java:5001) @ java.lang.reflect.method.invokenative(native method) @ java.lang.reflect.method.invoke(method.java:515) @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:785) @ com.android.internal.os.zygoteinit.main(zygoteinit.java:601) @ dalvik.system.nativestart.main(native method) caused by: java.lang.nullpointerexception @ com.example.myapp.ui.addresseditor.addresseditoractivity.void setentrystart(java.util.date)(unknown source) void setcategory(com.example.myapp.common.model.bookingdetail) void loadviewmodel(android.os.bundle) void putaddresdetailuuid(java.lang.string,com.example.myapp.common.model.addressdetail,android.os.bundle) void putdate(java.lang.string,java.util.date,android.os.bundle) void dosave(com.example.myapp.ui.addresseditor.addresseditoractivity$oneditortaskcompletelistener) void saverecurringtemplate(boolean,boolean,boolean,com.example.myapp.ui.addresseditor.addresseditoractivity$oneditortaskcompletelistener) void closeeditor(boolean,boolean,boolean) void access$0(com.example.myapp.ui.addresseditor.addresseditoractivity) void access$5(com.example.myapp.ui.addresseditor.addresseditoractivity,java.lang.string) void access$6(com.example.myapp.ui.addresseditor.addresseditoractivity,android.view.view) void access$7(com.example.myapp.ui.addresseditor.addresseditoractivity,java.util.date) void access$11(com.example.myapp.ui.addresseditor.addresseditoractivity,com.example.myapp.common.model.enums.priorities) void access$13(com.example.myapp.ui.addresseditor.addresseditoractivity,com.example.myapp.common.model.addressdetail) void access$25(com.example.myapp.ui.addresseditor.addresseditoractivity,double) void access$27(com.example.myapp.ui.addresseditor.addresseditoractivity,boolean) void access$28(com.example.myapp.ui.addresseditor.addresseditoractivity,boolean,boolean,boolean) void access$36(com.example.myapp.ui.addresseditor.addresseditoractivity,boolean,boolean,boolean,com.example.myapp.ui.addresseditor.addresseditoractivity$oneditortaskcompletelistener) @ com.example.myapp.ui.addresseditor.addresseditoractivity.void oncreate(android.os.bundle)(unknown source) @ android.app.activity.performcreate(activity.java:5231) @ android.app.instrumentation.callactivityoncreate(instrumentation.java:1087) @ android.app.activitythread.performlaunchactivity(activitythread.java:2148) ... 11 more
obviously crash caused nullpointerexception
how find exact source? have read stack trace top-down or bottom-up? far think trace has 2 parts:
android.app.activitythread.performlaunchactivity
have been called. right?
while app executing android.app.activitythread.performlaunchactivity
nullpointerexception
occurred. exact location of exception specified in sec part of log starting @ bottom line.
com.example.myapp.ui.addresseditor.addresseditoractivity.void oncreate
called right? the next lines not understand: methodes listed here, void setentrystart
or void setcategory
of cause part of addresseditoractivity
not called straight oncreate
.
is list of methodes of addresseditoractivity
have been used @ any time during lifetime of activity or mean, these methodes called each other? setentrystart
not phone call setcategory
or vice versa...
do have read method list top-down or bottom up? starting setentrystart
makes sense follow list downwards closeeditor
(start activity, setup properties , view model, edit data, save data, close editor) access$xy
entries mean? not create sense me.
do have possible cause of nullpointerexception
in setentrystart
or in access$36(...)
(what be) or @ completly different location?
thank much help!
edit: @shayan pourvatan, @pankaj
this code of setentrystart
private date _entrystart; private void setentrystart(date start) { _entrystart = start; if (_entryend != null && _entrystart != null && _entryend.before(_entrystart)) _entryend = _entrystart; } private date _entryend; private void setentryend(date end) { _entryend = end; if (_entryend != null && _entrystart != null && _entryend.before(_entrystart)) _recurringstart = _entryend; }
the possibility nullpointerexception
_entryend.before(_entrystart)
_entryend
beingness null, wouldn't it? if _entryend != null
checked before , far know farther evaluation of if-statment canceld if status fails. _entryend.before(_entrystart)
not called if _entryend
null, it?
these stack traces , method called stack , stack lifo (last in first out)
so, have read top bottom.
eg: if phone call m1() main() ,m2() m1() , m3() m2() stack be
main()->m1()->m2()->m3()
java android eclipse nullpointerexception crash-dumps
Comments
Post a Comment