美文网首页安卓
App启动优化(一)冷启动和热启动

App启动优化(一)冷启动和热启动

作者: Geekholt | 来源:发表于2019-07-10 21:08 被阅读0次

如需转载请评论或简信,并注明出处,未经允许不得转载

系列文章

目录

前言

启动速度是一个app对用户来说的第一体验,如果启动速度慢就会给用户的第一印象不太好,这里我们可以参考”八秒定律“

八秒定律是在互联网领域存在的一个定律,即指用户访问一个网站时,如果等待网页打开的时间超过8秒,会有超过70%的用户放弃等待

本系列文章将进行App启动优化相关讲解,本节我们先来了解一下App启动的分类

启动分类

冷启动

当启动应用时,后台没有该应用的进程,这时系统会重新创建一个新的进程分配给该应用,这个启动方式就是冷启动

大致流程

当点击app的启动图标后,首先会通过AMS在System进程展示一个Starting Window(通常情况下是个白屏,可以通过设置Application的theme修改),接着AMS会通过Zygote创建应用程序的进程,并通过一系列的步骤后调用Application的attachBaseContext()onCreate()然后最终调用Activity的onCreate()/onStart/onResume以及contentViewmeasure/layout/draw最终显示在界面上

App冷启动过程

冷启动耗时最多,是app启动时长的衡量标准

热启动

在后台已有进程的情况下,系统会从已有的进程中来启动应用,这个方式叫热启动(例:按back键、home键,应用虽然会退出,但是该应用的进程是依然会保留在后台,可进入任务列表查看)。热启动因为会从已有的进程中来启动,所以热启动就不会走Application这步了,而是直接走MainActivity(包括一系列的测量、布局、绘制),所以热启动的过程只需要创建和初始化一个MainActivity就行了,而不必创建和初始化Application显然热启动比冷启动更快

参考文档:App startup time

总结

本文介绍了了冷启动和热启动以及它们对应的启动流程,在明白了流程之后我们才能有针对性的对各个步骤进行优化,从而加快启动时间

相关文章

  • APP性能优化

    一、APP启动性能优化。 APP启动主要分冷启动和热启动,主要优化冷启动。 1.尽量减少didFinishLauc...

  • app性能优化

    app启动 app启动分为两种:冷启动和热启动(冷启动就是App被重新打开,热启动就是从后台到前台,启动优化主要是...

  • iOS启动优化

    iOS App启动优化 iOS启动可分为冷启动和热启动两种冷启动:app为kill状态下点击app启动热启动:ap...

  • App启动优化(三)启动优化方案

    系列文章 App启动优化(一)冷启动和热启动 App启动优化(二)启动时间测量 App启动优化(三)启动优化方案 ...

  • 面试题:APP启动优化

    一、APP启动分为冷启动和热启动 二、APP冷启动三大阶段 三、APP启动优化 四、共享缓存机制

  • Android项目优化-冷启动优化

    APP启动优化主要解决app启动缓慢,白屏半天的问题。 app启动方式主要为:冷启动和热启动 冷启动:当进程关掉,...

  • 性能优化 - 启动时间

    应用的启动分为:冷启动,暖启动和热启动。其中冷启动是我们优化的重点,优化冷启动可能会同时优化暖启动和热启动。 冷启...

  • 冷启动和热启动

    一,什么是冷启动和热启动 二,冷启动流程 三,怎么对冷启动进行优化 一,什么是冷启动和热启动 定义:冷启动就是启动...

  • 性能优化 -- 启动优化

    启动优化 app启动分为:冷启动;热启动,温启动三种冷启动: 耗时最多流程:冷启动经过的流程点击app --> ...

  • APP冷启动优化

    一、APP启动分为冷启动和热启动 1、冷启动 - APP从0-1的启动 2、热启动 - APP在后...

网友评论

    本文标题:App启动优化(一)冷启动和热启动

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