App启动速度优化

2020-07-27  本文已影响0人  安心做个笨男孩

目的:

app启动速度提升,有助于提高用户的体验。

成效:

通过检测App启动速度从4s提升到2s。

方案:

主要针对冷启动进行优化

App启动分析

一般情况下,App 的启动分为冷启动和热启动。

  • 冷启动是指, App 点击启动前,它的进程不在系统里,需要系统新创建一个进程分配给它启动的情况。这是一次完整的启动过程。
  • 热启动是指 ,App 在冷启动后用户将 App 退后台,在 App 的进程还在系统里的情况下,用户重新启动进入 App 的过程。

整个启动过程分为:
1、main() 函数执行前
2、main() 函数执行后
3、首屏渲染完成后

main() 函数执行前

对应优化方式:

main() 函数执行后

main() 函数执行后的阶段,指的是从 main() 函数执行开始,到 appDelegate 的 didFinishLaunchingWithOptions 方法里首屏渲染相关方法执行完成。

主要包括:首屏渲染需要做的文件读写,数据读取,大量计算。

屏渲染完成后

这个时候用户能看到首屏界面,这个阶段需要注意的是将会卡住主线程的方法处理掉,不能影响用户交互为主。

app启动时间的监测

Xcode中,Product->Scheme->Edit Scheme->Environment Variables
设置:key:DYLD_PRINT_STATISTICS value:1
可以监测app启动时间

TimeProfiler监测耗时函数

Instruments->TimeProfiler监测耗时函数

1、设置profile为debug模式
2、Build Settings->Build Options->Debug Infomation Format 中设置debug下为DWARF with dSYM File。这样设置就可以看到具体方法名而不是十六进制的地址。

上一篇下一篇

猜你喜欢

热点阅读