启动速度优化


最近几天遇到了两个令人发指的启动速度影响问题

1.Android9.0,targetSdkVersion>=28,系统就建议如果WebView是多进程使用的,需要在Application中手动设置WebView的独立进程的数据目录,如下:

直接引用

你敢想?提交之后,冷启动变慢了30ms+,邮件发出来的瞬间,懵逼了。。。。在快速定位到这个提交点之后,我反复的看代码,感觉只可能和这个有关。。。。,但是在方法前后加log打印查看耗时情况。。。。。纳尼?不耗时啊。。。一点都不耗时。。。。是不是测试结果有问题。。。。立刻马上找测试同学再来一遍,我不信。。。这不存在的。。。5分钟后,啪啪打脸。。。。很稳定的就是多30ms+,无奈,我又回过头来看代码,在反问了自己10遍不可能之后,万分无奈。。。我选择先注释掉看下。。。。结果很棒,冷启动的时间数据正常了,好的。。。那是为什么呢?本身方法不耗时,而且测试的手机还是5.0的手机,逻辑都不会走。。。怎么多了一行代码就唧唧思密达了。。。。难道只是因为引用了这个静态方法就导致耗时?好吧,我们把代码改一下,反射试试?

启动速度优化_第1张图片
反射调用

呵呵,完美解决。数据一如既往的完美。。。。有时候继续写

增加于2019/12/05,距离上次写这篇记录已经过去好几个月,后来在尝试其他解决方案后,发现直接将原有的直接引用抽取到一个工具类中以静态方法的方式调用也同样能解决问题,那感觉可能就和java代码编译有关了,有兴趣的朋友可以去了解下。

你可能感兴趣的:(启动速度优化)