启动速度是一个app对用户来说的第一体验,如果启动速度慢就会给用户的第一印象不太好,这里我们可以参考”八秒定律“
八秒定律是在互联网领域存在的一个定律,即指用户访问一个网站时,如果等待网页打开的时间超过8秒,会有超过70%的用户放弃等待冷启动
大致流程

当点击app的启动图标后,首先会通过AMS在System进程展示一个Starting Window(通常情况下是个白屏,可以通过设置Application的theme修改),接着AMS会通过Zygote创建应用程序的进程,并通过一系列的步骤后调用Application的attachBaseContext()、onCreate()然后最终调用Activity的onCreate()/onStart/onResume以及contentView的measure/layout/draw最终显示在界面上
App冷启动过程
冷启动耗时最多,是app启动时长的衡量标准热启动
在后台已有进程的情况下,系统会从已有的进程中来启动应用,这个方式叫热启动(例:按back键、home键,应用虽然会退出,但是该应用的进程是依然会保留在后台,可进入任务列表查看)。热启动因为会从已有的进程中来启动,所以热启动就不会走Application这步了,而是直接走MainActivity(包括一系列的测量、布局、绘制),所以热启动的过程只需要创建和初始化一个MainActivity就行了,而不必创建和初始化Application。显然热启动比冷启动更快网友回复
有没有不依赖embedding向量的RAG技术?
有没有支持实时打断语音通话并后台帮你执行任何的ai模型?
开源ai大模型文件格式GGUF、MLX、Safetensors、 ONNX 有什么区别?
出海挣钱支付收款PayPal、Wise 、PingPong、Stripe如何选择?
如何实现类似google的图片隐形水印添加和识别技术?
linux上如何运行任意windows程序?
ai能写出比黑客还厉害的零日漏洞等攻击工具攻击任意软件系统工程?
js如何获取浏览器的音频上下文指纹、Canvas指纹、WebGL渲染特征?
为啥ai开始抛弃markdown文本,重新偏好html文本了?
网站有没有办法鉴别访问请求是由ai操控chrome-devtools-mcp发出的?


