iOS_缩短app启动时间的一些见解

论坛 期权论坛 脚本     
匿名技术用户   2020-12-21 16:01   11   0

加速启动时间。快速打开app是很重要的,特别是用户第一次打开它时,对app来讲,第一印象太太太重要了。


之前搜过一些关于启动时间的文章, 发现只能边长, 但不能变短,

也就是说, 通过代码, 我们是控制不了他的启动时间的,

想要缩短启动时间就只能减少在这段时间里 需要做的事情


那么首先 我们来看看 在这段时间里, 程序都做了些什么:

Info.plist

pch 文件

main 函数

UIApplication和delegate

UIWindow

这是目前我所知道的, 可能不全

在这基础上, 我们能够控制的了 的就是 appDelegate 了, 还有就是pch里导入的头文件尽可能少

也就是说尽可能的少在appDelegate 里写东西

尽可能的使热启动(应用已经在后台运行,某个事件将其带至前台)时间无限的接近冷启动(完全没有运行的应用的启动时间)时间


你能做的就是使它尽可能做更多的异步任务,比如加载远端或者数据库数据,解析数据。避免过于庞大的XIB,因为他们是在主线程上加载的。所以尽量使用没有这个问题的Storyboards吧!一定要把设备从Xcode断开来测试启动速度


以下是Facebook 工程师的解决方案

  • 通过分析,删除第一次网络请求之前不必要的依赖项,仅保留所必需的有效身份验证令牌和订阅游标;
  • 借助一种他们称之为UDP priming的技术减少建立安全TCP连接(需要三次服务器往返通信)的时间。简单来说,应用会向服务器发送一个加密过的UDP数据包,其中包含订阅请求。这可以提示服务器将会有一个真正的TCP请求到达,那样服务器就可以提前获取和缓存数据。



分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP