通过打开手机设置->开发者选项->显示GPU过度渲染,可以对app是否存在过度渲染进行检测,从而寻找是否有进一步的优化空间。
从下图可以看到,在网页界面显示为粉红色,说明确实存在绘制的性能问题。
再来通过HierarchyViewer看看layout布局, BrowserView通过TabPageFlipper(ViewFlipper)管理着WebView。而通过观察chrome的GPU渲染结果, 是绿色的,说明很可能是引入ViewFlipper造成的GPU渲染过度。
在把TabPageFlipper(ViewFlipper)这层优化掉后,让BrowserView直接管理WebView。
可以看到GPU渲染结果已经是绿色的了。