美文网首页
android系统从上到下知识点

android系统从上到下知识点

作者: 阿狸清纯的容颜 | 来源:发表于2020-04-03 17:48 被阅读0次

    首先要写一个App我们要会哪些技能以及知识点呢

    第一步也就是大多数的app的样式

    启动页,可以是渐变的启动方式其实分为冷启动和热启动

    冷启动

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

    热启动:

    在启动应用时,系统中已有该应用的进程(例:按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

    相关文章

      网友评论

          本文标题:android系统从上到下知识点

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