前言
应用当前界面崩溃停留在上个页面,看不到崩溃日志
Android的logcat控制台,看不到应用崩溃的日志?
如何拦截到未捕获的异常,并打印出来,帮助我们快速定位到代码问题呢?
最近同事跟我反应说开发的应用run的时候发生了崩溃,但是在logcat中,只看到了应用重启的日志,类似下面这样的:
追寻答案
那么怎样查看错误日志,快速定位问题的原因呢?
1,由于崩溃的概率不会那么多,最开始的时候,纯靠手速:
知道操作哪里会崩溃,先把logcat控制台清下logcat控制台日志,然后操作应用,快速Ctrl+Alt+A(QQ的截屏快捷键);呵呵这个考验手速的方案,肯定不可取;
2,通过切换channel进程和dead进程查看错误日志,这个能看到一些日志,但是也不是很全面,不可取;
3,根据业务粗略定位产生问题的代码段,通过try catch包裹,通过debug跟踪代码一步步跟到问题所在;
这种适合代码逻辑清晰、简单地方,如果循环、接口回调、多线程等操作比较多,是很不易跟到具体问题的。 4,最好的方案是拦截到正常代码中未捕获的异常,然后能够单独打印出来,方便我们调试和查看。
接下来就看下如何去实现拦截未捕获的异常的。
确定方案
首先,我们要先了解一个UncaughtExceptionHandler,它能帮助我们捕获到全局的异常,
具体用法是Applicat