冷启动与热启动

APP的启动方式:

一般来说,APP的启动方式主要分为两种:冷启动和热启动。

  1. 冷启动:启动应用时,后台没有该应用的进程,系统会重新创建一个新的进程分配给该应用,即冷启动;
  2. 热启动:启动应用时,后台已有该应用的进程(例如:点击Back键或Home键退出,此时应用的进程依然在后台存活),这时会在已有的进程中启动该应用,即热启动;

特点:

  1. 冷启动:由于冷启动需要系统重新创建一个新的进程,所以会先创建和初始化Application,然后再创建和初始化StartActivity(启动页Activity)并测量绘制其界面。从点击启动图标到启动完成(以看到界面的第一帧为准)应用的启动流程如下:

    Application构造方法->attachBaseContext()->onCreate()->StartActivity构造方法->onCreate()->onStart()->onResume()->测量、绘制布局并展示;
    
  2. 热启动:由于后台已存在该应用的进程无需重新创建,且一个应用的进程从创建到销毁Application只会被初始化一次。所以热启动只会执行StartActivity的创建和初始化;



作者:HMonkey
链接:https://www.jianshu.com/p/7253c2848cf3
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
posted @ 2018-03-20 21:23  Gaoyongxian666  阅读(437)  评论(0编辑  收藏  举报