app冷启动和热启动的区别?
一、app冷启动和热启动的区别
冷启动:冷启动其实就是电脑启动的一种方式,当电脑切断电源,在关机状态下按下POWER启动计算机。
热启动:在计算机已经开启的状态下,通过菜单,任务管理器,快捷键或键盘重新引导操作。
在APP中:
当用户启动应用程序时,后台没有该应用程序的进程,这时系统会重新给应用程序分配一个进程,这种方法就叫冷启动。
当用户启动应用程序时,后台已经有了该程序的进程(通过,退出,home键退出让应用程序在后台继续执行)当再次点开APP马上能够恢复到上次使用的状态,不需要再回到手机的首页打开应用程序,这个方式就叫热启动。
共同点:
无论是冷启动还是热启动,都要重新上电,检测硬件,将RAM区清零,即所有变量都初始化为0。
延伸阅读:
二、冷启动的优化
减少onCreate( ) 方法的工作量用户总要等待一个启动时间,而我们所能做的 就是 在 applicaiton 和名列前茅个MainActivity 类 减少 onCreate() 的工作量,从而减短时间冷启动时间,但是又不得不使用一些第三方SDK,可以使用一些懒加载,在真正使用的地方再去初始化。
在Activity 创建的过程中,其实是会经过一系列 framework层的代码。但是懒加载也有不好的地方,就是很难把所有的场景都列出,哪个第三方是 先使用的,所以一般还是放在 applicaition 去初始化不要让Application 参与 业务操作不要在 Application 进行耗时操作不要以静态变量的方式 在Application 中保存数据布局 / mainThread 的 操作
以上就是关于app冷启动和热启动的区别的内容希望对大家有帮助。

猜你喜欢LIKE
相关推荐HOT
更多>>
大数据和人工智能的区别是什么?
一、大数据和人工智能的区别大数据和人工智能是两个不同的概念,虽然它们之间有一些重叠,但是它们关注的重点是不同的。大数据主要关注海量数据...详情>>
2023-10-13 23:19:27
图片压缩方法有哪些?4种无损图片压缩方法?
在工作中经常出现因为图片太大不能发送或者是上传的情况,这个时候就需要将图片进行压缩才能上传,怎么把图片压缩到200K以内呢?今天就分享给大...详情>>
2023-10-13 21:53:13
Hive中的DISTINCT和GROUP BY的区别是什么?
一、Hive中的DISTINCT和GROUP BY的区别Hive是基于Hadoop的数据仓库工具,支持使用类SQL语言查询存储在Hadoop集群中的数据。在Hive中,DISTINCT...详情>>
2023-10-13 20:51:32
bylayer和byblook的区别?
一、bylayer和byblook的区别1、意思不同bylayer意思是对象属性使用它所在图层的属性。byblock意思是对象属性使用它所在的图块的属性。2、设置方...详情>>
2023-10-13 17:41:18热门推荐
面向人类的语言和面向机器的语言到底有什么区别?
沸大数据和人工智能的区别是什么?
热变量的储存机制是什么?
热Java 假泛型和真泛型语言区别是什么?
新图片压缩方法有哪些?4种无损图片压缩方法?
编程开发环境中,创建工程/项目到底和创建文件有什么区别?
Hive中的DISTINCT和GROUP BY的区别是什么?
java构造方法与实例化对象的区别?
编程中handle与hook什么区别?
PHP if 语句判断时,变量在前跟变量在后有什么区别?
统计学与大数据有什么区别?
factorization machine和logistic regression有什么区别?
机器学习算法中GBDT与Adaboost的区别与联系是什么?
bylayer和byblook的区别?
技术干货






