有时候可能一个APP开发出的时间较长,对启动速度这一方面不太关注,从而致使APP启动速度较慢。对于一款APP来说,启动速度可以说是客户的第一印象体验,那么启动速度中又分为首次启动、冷启动、热启动这三种启动类型,本文章具体来说一说冷启动和热启动之分,以及u-apm这一工具在冷启动和热启动中起到哪些优化作用!

  app冷启动和热启动区别

  app热启动: 当应用已经被打开, 但是被按下返回键、Home键等按键时回到桌面或者是其他程序的时候,再重新打开该app时, 这个方式叫做热启动(后台已经存在该应用进程)。热启动因为会从已有的进程中来启动,所以热启动就不会走Application这步了,而是直接走MainActivity(包括一系列的测量、布局、绘制),所以热启动的过程只需要创建和初始化一个MainActivity就行了,而不必创建和初始化Application

  app冷启动: 当应用启动时,后台没有该应用的进程,这时系统会重新创建一个新的进程分配给该应用, 这个启动方式就叫做冷启动(后台不存在该应用进程)。冷启动因为系统会重新创建一个新的进程分配给它,所以会先创建和初始化Application类,再创建和初始化MainActivity类(包括一系列的测量、布局、绘制),最后显示在界面上。

  u-apm起到的优化作用

  启动分析展示详细的启动趋势、慢启动情况、启动崩溃数据。帮助开发者精准把控应用的启动性能状态,从而尽早找出bug出处,从根源解决问题。

  1、启动趋势中展示启动耗时和次数、启动耗时分布、性能分解。

  (1)启动耗时和次数详细展示当前筛选维度和时间状态下的启动次数、平均耗时、以及分位数。

  (2)平均耗时展示当前筛选维度和时间状态下的冷/热/首次启动耗时分布。图表颗粒度:按照每x.y00~x.y99秒(s)划分。

  (3)性能分解仅限首次启动和冷启动状态下,筛选维度和时间状态下的性能分解的时间。

  2、慢启动分析展示慢启动情况的占比以及慢启动设备列表,可以在启动设置中自定义慢启动的划分,默认首次启动/冷启动超过3秒为慢启动,热启动超过1秒为慢启动。

  (1)慢启动耗时和次数详细展示当前筛选维度和时间状态下的慢启动的次数、正常启动次数、以及平均慢启动耗时。

  (2)慢启动列表展示慢启动问题发生的列表。

  (3)慢启动详情能够有效的展示慢启动设备的详细启动情况与设备信息。

  3启动崩溃分析精准展示首次启动、冷启动、热启动筛选条件下的崩溃率、崩溃次数、影响用户数、影响用户占比趋势以及列表。

  u-apm能够帮助开发者精准定位问题点,实时监控APP冷启动和热启动的状态、启动时长、是否崩溃等等。U-APM应用性能监控平台,通过轻量级的集成接入即可拥有实时、可靠、全面的应用崩溃、ANR、自定义异常等捕获能力, 及卡顿、启动分析、内存分析、网络分析等性能监测能力,支持多场景、多通道智能告警监测,帮助 开发者高效还原异常、卡顿用户的访问路径和业务现场,缩短故障排查时间。提供云真机测试能力, 助力开发者从研发测试质量验收到线上问题复现排查,保障应用品质,提升测试效率。在云真机测试 期间自动采集崩溃信息,提供详尽的崩溃报告协助筛查,真正实现监控测试全流程深度打通。