美文网首页
App启动速度优化

App启动速度优化

作者: 景天儿 | 来源:发表于2019-05-28 11:59 被阅读0次

    本文是对戴铭专栏中“App 启动速度怎么做优化与监控?”的小结。

    1 启动时,app都做了什么

    1-1 main前

    1. 加载可执行文件(.o的集合)
      ​2. 加载dylb, 做符号绑定,rebase指针
    2. Runtime初始处理,类注册等
    3. load()、静态全局变量

    1-2 main后

    进入main -到> didFinishLaunching首屏渲染相关方法执行完
    首屏渲染所需的操作:配置文件、数据、计算

    1-3 首屏渲染完成后

    app所需的操作:配置文件、注册监听、其他初始化

    2 优化

    简单说,让main少做事,尤其是渲染前。

    1. 减少load方法
    2. 注册监听、其他模块初始化等操作后移(已体现在第一节中)

    3 监控

    3-1 原理

    1. 定时抓主线程调用栈
    2. ​hook objc_msgsend

    3-2 工具

    1. Time Profiler
      根据3-1中原理1 实现的。
      精度不够高,但基本够用,成本低。
    2. fishhook

    相关文章

      网友评论

          本文标题:App启动速度优化

          本文链接:https://www.haomeiwen.com/subject/rjbrtctx.html