记录tableview卡顿的问题解决路程

1,037 阅读1分钟

问题:

整个app不知从哪个版本开始,所有的UIScrollView,以及UIScrollView的子类,滚动减速时,全部会卡,用YYFPSLabel检测时,基本处于53FPS左右。

问题排查过程:

一开始完全没思路,天马星空地去想

  • 写个新的tableview,添加最简单的tableview,滚动,仍然卡顿,排除页面变高,图片加载的影响。

  • 找了UIViewController的分类,并删除后,仍然卡顿。

  • 对着屏幕思考许久。

  • 找了郭YY大神的流畅的一匹的tableviewdemo看看。

  • 手机上看到消息,切换app回复后,切回该app,发现卡顿的问题好了,全程60fps(好像找到了问题),但是仅此而已,还是想不出问题所在。

  • 由于业务量不是很大,也没进行组件化,只能使用最笨的办法,本地删除所有业务代码,只留下common文件夹下的文件和新写的最简单的tableview

  • 一个个删除Vendors下的第三方库

  • 直到UMVisualSDK删除后,fps才回复正常

  • 最后定位到UMVisual的库引起了整个app的UIScrollView卡顿的问题

由此,定位了一整天的bug终于得到了修复。 以后使用第三方的库,尤其是影响整个app性能的,要经过充分预研和测试才能使用