美文网首页
APP的启动优化

APP的启动优化

作者: 石子17 | 来源:发表于2020-10-27 22:11 被阅读0次

    一般而言,APP的启动时间,是从用户点击APP开始,到用户看到第一个界面之间的时间,总的来说,APP的启动主要包括三个阶段:

    App启动主要分三个阶段

    1.main函数执行前
    2.main函数执行后
    3.首页渲染完成后

    main函数执行前

    main函数执行前,系统主要会做下面几件事
    -加载可执行文件(APP的.o文件集合)
    -加载动态链接库,进行rebase指针调整和bind符号绑定
    -ObjC的运行时处理,包括ObjC相关类的注册,category注册,selector唯一性检查等
    -初始化,包括了执行+load()方法,attribute(constructor)修饰的函数调用,创建C++静态全局变量

    相应的这个阶段对于启动速度优化来说,可以做的事情包括
    1.减少动态库的加载,每个库本身都有依赖关系,苹果公司建议使用更少的动态库,并建议在使用动态库数量较大时,尽量将多个动态库进行合并,数量上苹果建议最多使用6个非系统动态库
    2.减少加载启动后不去侃用的类或者方法

    3.+load()方法里的内容放到首屏渲染完成后在执行,使用+()initialize方法替换掉,因为在一个+load()方法里,进行运行时方法替换操作会带来4毫秒的消耗,不要小看这4毫秒,积少成多

    相关文章

      网友评论

          本文标题:APP的启动优化

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