HarmonyOS 实战开发 —— 冷启动首帧完成时延问题分析


📚往期笔录记录🔖:

🔖鸿蒙(HarmonyOS)北向开发知识点记录~
🔖鸿蒙(OpenHarmony)南向开发保姆级知识点汇总~
🔖鸿蒙应用开发与鸿蒙系统开发哪个更有前景?
🔖嵌入式开发适不适合做鸿蒙南向开发?看完这篇你就了解了~
🔖对于大前端开发来说,转鸿蒙开发究竟是福还是祸?
🔖鸿蒙岗位需求突增!移动端、PC端、IoT到底该怎么选?
🔖记录一场鸿蒙开发岗位面试经历~
🔖持续更新中……


应用启动可以分为冷启动和热启动:

  • 冷启动:当应用启动时,后台没有该应用的进程,这时系统会重新创建一个新的进程分配给该应用, 这种启动方式就叫做冷启动。
  • 热启动:当应用程序已经在后台运行,此时用户再次打开应用程序时,应用程序仍然在内存中,可以直接从内存中加载并继续之前的状态,而不需要重新初始化和加载资源,这种称为热启动。

冷启动首帧完成时延:指的是应用冷启动时,从点击离手开始到应用进程首帧送显上屏显示的这一段时间,称为冷启动首帧完成时延。

冷启动首帧完成时延的参考值为680ms,在定位冷启动时延相关问题时可以将此作为性能是否达标的一个参考。

性能参考起止点介绍

冷启动首帧完成时延的性能衡量的起点为用户点击应用图标离手点时间,止点为应用首帧送显的时间。

注意:如果应用启动时存在广告,需要减去广告时间,即冷启动首帧完成时延计算要去除广告时间。

问题定位思路

冷启动首帧完成时延问题的通用定位思路为先确认时延起止点,然后看起止点时延是否超参考值680ms,未超过则说明达标,超过则根据关键Trace信息将时延区间分为七个阶段:

  1. input阶段(参考值:8ms)。
  2. TP事件分发(参考值:15ms)。
  3. 触发应用启动(参考值:20ms)。
  4. 进程创建(参考值:15ms)。
  5. 应用加载(参考值:15ms)。
  6. Ability资源加载界面布局(参考值:500ms)。
  7. 首帧渲染显示(参考值:20ms)。

分析时,优先看第6阶段Ability资源加载界面布局是否超过参考值500ms(应用进程耗时),如果超过则根据应用进程Trace信息分析耗时原因,并和应用侧对齐处理。如果是其他阶段耗时超过参考值,则根据实际情况找到耗时Trace并和对应领域对齐是否存在问题(通常情况下都是应用侧耗时导致超标,其他阶段可视情况是否需要分析),处理流程如下图:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值