最近项目中使用ViewPager实现聊天图片浏览功能时,测试测出一个崩溃bug——即在华为P30真机上反复点击查看图片一定会崩溃,但其他机型并未出现此情况。
先百度一下,网上基本上是参考stackoverflow一篇文章
文中有效的解决方案是——重写 FragmentPagerAdapter 的 finishUpdate方法:
@Override public void finishUpdate(@NonNull ViewGroup container) { try { super.finishUpdate(container); } catch (Exception e) { e.printStackTrace(); } }
但时程序重新执行后,还是崩溃了。折腾了其他方案无折后,我仔细跟踪了崩溃日志:
发现报错落在点击图片finish Activity 时调用的onBackPressed 方法上,我便注掉了 重写该方法中super语句
@Override public void onBackPressed() { // super.onBackPressed(); finish(); }
重新运行后,程序再也没有崩溃,算是解决了。由于是单一机型(huawei p30)的问题,所以崩溃原因没有深入分析, 仅供大家参考