美文网首页
App启动优化

App启动优化

作者: fcf7850dd33e | 来源:发表于2019-09-27 15:07 被阅读0次

    1、冷启动/热启动

    2、启动顺序

    1.pre-main阶段

    1.1.加载应用的可执行文件

    1.2.加载动态链接库加载器dyld(dynamicloader)

    1.3.dyld递归加载应用所有依赖的dylib(dynamiclibrary 动态链接库)

    2.main()阶段

    2.1.dyld调用main()

    2.2.调用UIApplicationMain()

    2.3.调用applicationWillFinishLaunching

    2.4.调用didFinishLaunchingWithOptions

    3、优化建议

    pre_main阶段

    1.移除不需要用到的动态库2.移除不需要用到的类3.合并功能类似的类和扩展4.尽量避免在+load方法里执行的操作,可以推迟到+initialize方法中。

    main阶段

    * 日志、统计等必须在 APP 一启动就最先配置的事件

    * 项目配置、环境配置、用户信息的初始化 、推送、IM等事件

    * 其他 SDK 和配置事件

    梳理各个三方库,找到可以延迟加载的库,做延迟加载处理,比如放到首页控制器的viewDidAppear方法里。

    梳理业务逻辑,把可以延迟执行的逻辑,做延迟执行处理。比如检查新版本、注册推送通知等逻辑。

    避免复杂/多余的计算。

    避免在首页控制器的viewDidLoad和viewWillAppear做太多事情,这2个方法执行完,首页控制器才能显示,部分可以延迟创建的视图应做延迟创建/懒加载处理。

    采用性能更好的API。

    首页控制器用纯代码方式来构建。

    相关文章

      网友评论

          本文标题:App启动优化

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