iOS原理(十)----性能优化

2018-12-27  本文已影响0人  会笑的Even

iOS原理(十)----性能优化

1.卡顿优化

在屏幕成像的过程中,CPU和GPU起着至关重要的作用:

在iOS中是双缓冲机制,有前帧缓存、后帧缓存.

屏幕成像包括:垂直同步信号(VSync)和水平同步信号(HSync).按照60FPS的刷帧率,每隔16ms就会有一次VSync信号,当垂直同步信号来临时,如果当前帧缓存没有生成时,会显示前一帧缓存,这就会造成卡顿现象.

卡顿优化 - CPU:

卡顿优化 - GPU:

GPU有2种渲染方式:

离屏渲染消耗性能的原因:

下面的操作会触发离屏渲染:

平时所说的“卡顿”主要是因为在主线程执行了比较耗时的操作,可以添加Observer到主线程RunLoop中,通过监听RunLoop状态切换的耗时,以达到监控卡顿的目的.

耗电优化

耗电来源:

所以有以下优化策略:

APP启动优化

APP的启动可以分为2种:

APP启动时间的优化,主要是针对冷启动进行优化,通过添加环境变量可以打印出APP的启动时间分析(Edit scheme -> Run -> Arguments)
DYLD_PRINT_STATISTICS设置为1
如果需要更详细的信息,那就将DYLD_PRINT_STATISTICS_DETAILS设置为1.

APP的冷启动可以概括为3大阶段:

所以启动优化策略有,按照不同的阶段:

安装包优化

安装包(IPA)主要由可执行文件、资源组成,所有采用以下方式安装包优化:

上一篇 下一篇

猜你喜欢

热点阅读