如果你没空看我扯淡,请直接拖拽到文末查看解决办法
问题
App新增功能模块,测试的时候出现了闪退的问题。
修复个小Bug,那还不是松松的。如果有解决不了的Bug,那一定不是我写的😄。
- 然而很尴尬的是,错误日志一闪而过,App重启后,错误日志刷新了。
在闪退之前是的代码段是可以正常打断点调试的,而闪退代码块之后的断点,老司机飙起车来根本停不下来。 - 这就很麻烦了,新增的功能模块如果思路结构很清晰,就不太愿意写一点测一点浪费时间。整个写完以后,在没有错误日志帮助定位问题在哪一块代码块的时候,靠检查代码找问题是不具备可操作性的。
思路
- 首先想到的肯定是,clean啊,重启啊,扑街。
- google一下,貌似并没有太多人遇到这个问题,有一个回答是让把混淆暂时关掉调试,如果你也碰到这个问题可以试一下这个解决办法,反正对我没用,扑街。
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
- 关掉instant run,扑街。
- 也有人推荐用try - catch的方式, 想了一下,即然debug都刹不住车,try - catch有这么大的摩擦系数么?没有测试,预测扑街。
- 因为我想到了一个有意思的解决方案,错误日志停留不到半秒就被新的日志覆盖刷新,即便一闪而过,但还是出现过了。果断用 quike time 录屏软件复现了Bug,然后在视频里暂停看日志,搞定。
但是作为一只程序猿,这么非主流的办法去解Bug。。。
我不要面子的啊!!!
捣鼓了一下,发现如下解决办法
目前最合适的解决办法
-
刷新后的日志里是没有之前崩溃的错误信息的
-
点击设备右边的选择框选择dead
you got it