iOS开发笔记

App启动速度优化.----<iOS开发高手课>笔记

2019-04-09  本文已影响0人  王四猫
App的启动主要包括三个阶段:
  1. main()函数执行前;
  2. main()函数执行后;
  3. 首屏渲染完成后.
main()函数执行前

在main()函数执行前.系统主要会做下面几件事:

main()函数执行后

main()函数执行后阶段,指的是从main()函数执行开始,到appDelegate 的didFinishLaunchingWithOptions方法里首屏渲染相关方法执行完成.
首页的业务代码逻辑都是在这个阶段,也就是首屏渲染前执行的,主要包括:

首屏渲染完成后

这个阶段是从渲染完成开始,到didFinishLaunchingWithOptions方法作用于结束时结束.
这个阶段用户已经能看到App首页信息了.

功能级别的启动优化

  1. 第一种方法是,定时抓去主线程上方法的调用堆栈,计算一段时间的各个方法的耗时。
    Xcode工具自带的Time Profiler采用的就是这个方式。(个人决定选择这种简单实现方式)
  2. 对objc_msgSend方法进行hook来掌握所有方法的执行耗时。
    优点是非常精确,缺点是只能针对OC方法。

戴铭老师技术层次非常的高,这次的课程也是干货满满,我将他所讲述的课程中我当前能理解的部分以笔记的形式誊录下来。有兴趣的同学非常推荐在极客学院购买他的课程来获取全部内容。

上一篇下一篇

猜你喜欢

热点阅读