美文网首页iOS
application冷启动优化

application冷启动优化

作者: child_cool | 来源:发表于2018-08-02 21:16 被阅读30次

    app启动过程

    • 解析info.plist
      • 加载相关信息,例如闪屏
      • 沙盒建立、权限检查
    • mach-o加载
      • 如果是胖二进制文件(通用二进制文件),寻找合适当前CPU类别的部分
      • 加载所依赖的mach-o文件(递归调用mach-o加载方法)
      • 定位内部、外部指针引用,如字符串、函数
      • 执行声明为attribute((constructor))的C函数
      • 加载类扩展(Category)中的方法
      • C++静态对象加载、调用ObjC的 +load 函数
    • 程序执行
      • 调用main函数
      • 调用UIApplicationMain函数
      • 调用applicationWillFinishLaunching方法

    引用:https://blog.csdn.net/Tencent_Bugly/article/details/77363817?locationNum=1&fps=1

    优化方式

    • 降低加载的动态库数量
    • 降低oc类的数量
    • c的constructor函数减少使用
    • 降低c++静态对象数量
    • oc的load方法尽量用dispatch_once代替
    • 减少分类的数量
    • viewdidload中的内容延迟加载
    • 去掉无用的文件资源和类

    相关文章

      网友评论

        本文标题:application冷启动优化

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