俗话说,要想优化好,流程不可少。作为一款App的开发者,首先要把它的启动流程做好了,简单明了的启动流程不仅拥有很好的体验感,还能获得更多用户对App的肯定。本篇文章就带大家了解下app启动流程的三个进程和六个大类!
一、三个进程
1、Launcher进程:整个App启动流程的起点,负责接收用户点击屏幕事件,它其实就是一个Activity,里面实现了点击事件,长按事件,触摸等事件,可以这么理解,把Launcher想象成一个总的Activity,屏幕上各种App的Icon就是这个Activity的button,当点击Icon时,会从Launcher跳转到其他页面。
2、SystemServer进程:这个进程在整个的Android进程中是非常重要的一个,地位和Zygote等同,它是属于Application Framework层的,Android中的所有服务,例如AMS, WindowsManager, PackageManagerService等等都是由这个SystemServer fork出来的。
3、App进程:你要启动的App所运行的进程。
二、六个大类
1、ActivityManagerService:(AMS)AMS是Android中最核心的服务之一,主要负责系统中四大组件的启动、切换、调度及应用进程的管理和调度等工作,其职责与操作系统中的进程管理和调度模块相类似,因此它在Android中非常重要,它本身也是一个Binder的实现类。
2、Instrumentation:监控应用程序和系统的交互。
3、ActivityThread:应用的入口类,通过调用main方法,开启消息循环队列。ActivityThread所在的线程被称为主线程。
4、ApplicationThread:ApplicationThread提供Binder通讯接口,AMS则通过代理调用此App进程的本地方法。
5、ActivityManagerProxy:AMS服务在当前进程的代理类,负责与AMS通信。
6、ApplicationThreadProxy:ApplicationThread在AMS服务中的代理类,

本文详细介绍了Android应用的启动流程,涉及三个关键进程——Launcher进程、SystemServer进程和App进程,以及六大类组件的作用,包括ActivityManagerService、Instrumentation、ActivityThread等。理解这些流程对于优化App启动性能至关重要。此外,文章还提到了友盟+u-apm工具和云真机服务,用于监测和提升应用性能。
最低0.47元/天 解锁文章
3万+

被折叠的 条评论
为什么被折叠?



