美文网首页
Android冷启动和热启动

Android冷启动和热启动

作者: GexYY | 来源:发表于2019-01-02 19:53 被阅读0次

一、什么是冷启动、热启动?

  • 冷启动:
    在启动应用时,系统中没有该应用的进程,这时系统会创建一个新的进程分配给该应用;

  • 热启动:
    在启动应用时,系统中已有该应用的进程(例:按back键、home键,应用虽然会退出,但是该应用的进程还是保留在后台);

二、冷启动、热启动的区别

  • 冷启动:系统没有该应用的进程,需要创建一个新的进程分配给应用,所以会先创建和初始化Application类,再创建和初始化MainActivity类(包括一系列的测量、布局、绘制),最后显示在界面上。
  • 热启动: 从已有的进程中来启动,不会创建和初始化Application类,直接创建和初始化MainActivity类(包括一系列的测量、布局、绘制),最后显示在界面上。

三、冷启动时间的计算

API19 之后,系统会出打印日志输出启动的时间;
冷启动时间 = 应用启动(创建进程) —> 完成视图的第一次绘制(Activity内容对用户可见);

四、冷启动流程

Zygote进程中fork创建出一个新的进程;
创建和初始化Application类、创建MainActivity;
inflate布局、当onCreate/onStart/onResume方法都走完;
contentView的measure/layout/draw显示在界面上;
总结:
Application构造方法 –> attachBaseContext() –> onCreate() –> Activity构造方法 –> onCreate() –> 配置主题中背景等属性 –> onStart() –> onResume() –> 测量布局绘制显示在界面上。

五、冷启动的优化

减少在Application和第一个Activity的onCreate()方法的工作量;
不要让Application参与业务的操作;
不要在Application进行耗时操作;
不要以静态变量的方式在Application中保存数据;
减少布局的复杂性和深度;


原文:https://blog.csdn.net/lingguiqin/article/details/79382240

相关文章

  • 冷启动和热启动

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

  • 启动优化1

    目录 一、冷启动定义 二、 冷启动和热启动 三、冷启动、热启动的区别 四、冷启动时间的计算 五、冷启动流程 六、冷...

  • App 冷启动与热启动及启动白屏优化

    介绍一下 app 冷启动和热启动方式来实现 app 秒开的效果。那么,先来看看什么叫冷启动和热启动。 冷启动:指 ...

  • APP冷启动优化

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

  • 性能优化 - 启动时间

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

  • Android开发知识点总结

    Android启动 一、Android应用启动方式:(1)冷启动 (2)热启动 (3)温启动 二、产生白屏的原因...

  • android 冷启动和热启动

    一、什么是冷启动、热启动? 冷启动:在启动应用时,系统中没有该应用的进程,这时系统会创建一个新的进程分配给该应用;...

  • Android冷启动和热启动

    一、什么是冷启动、热启动? 冷启动:在启动应用时,系统中没有该应用的进程,这时系统会创建一个新的进程分配给该应用;...

  • App 冷启动与热启动及启动白屏优化

    介绍 我们介绍一下app冷启动和热启动方式来实现app秒开的效果。那么,先来看看什么叫冷启动和热启动。 冷启动:指...

  • App启动优化

    app启动分为冷启动和热启动两种。所谓的冷启动和热启动主要取决于该app进程是否在系统中。我们主要考虑的是冷启动的...

网友评论

      本文标题:Android冷启动和热启动

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