如何在2个月内实现Android启动速度翻倍

随着闲鱼App端更多新功能、新技术的加入,应用冷启动速度越来越慢,这也意味着用户看到有效内容的时间被拉长,对用户体验有着很大的伤害。目前,在内部测试版本中,我们已经将安卓在低端机上的冷启动时间从原来的10s降低到了5s内。

闲鱼是如何快速将启动时间减少一半的呢?分为 建立标准分析现状抓大放小三个步骤。

建立标准

做性能优化不是讨论哲学问题,建立合理的数据衡量标准非常重要。尽管已经有了很多关于如何卡口关键函数、如何判断页面第一帧渲染完成的讨论,但从代码层面进行判断始终与用户的感知无法100%匹配。如何迅速建立起启动时间的标准?我们借鉴了手淘的方式和标准,利用内部的魔镜平台,使用视频关键帧的方式记录下App图标被点下到首页第一屏渲染完成作为一整个应用冷启动的过程。这与用户看到的启动过程吻合。

对于设备的选择上,我们使用y67这样一台现在看起来相对性能较差的机型作为优化的目标机型。低端机存在CPU能力弱,IO速度慢等问题,而慢代码与IO恰恰是拖慢应用启动最大的原因。定位优化的目标机型可以更加快速解决common类型的启动问题。

闲鱼现状

我们先使用日志打点的方式来统计启动过程中耗时的大头,以便可以快速得将启动性能提高上去。可以看到图中,进入首页渲染前, commoninteractive两部分占去了大部分的时间,这是启动器在执行启动任务。而在进入首页后,页面的请求与view的排版占用了大部分的时间。

原文链接:【https://www.infoq.cn/article/xBDxJ3QZ3eez0rTPHLTL】。未经作者许可,禁止转载。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章