本文介绍: 可以看到 startServicesIfNeeded() 循环 start 了config_systemUIServiceComponents 里的 Service,这些服务不是四大组件之一的 Service, 而是继承自 SystemUI 接口的服务,我们称之为 SystemUI服务。3、SystemServer会启动系统运行所需的众多核心服务和普通服务、以及一些应用及数据。在SystemServer 中的 main()方法中,就一句代码生成 SystemServer 对象,执行run 方法。
1、手机开机后,Android系统首先会创建一个Zygote(核心进程)。
2、由Zygote启动SystemServer。
3、SystemServer会启动系统运行所需的众多核心服务和普通服务、以及一些应用及数据。例如:SystemUI 启动就是从 SystemServer 里启动的。
4、进入锁屏界面,开机完成。
SystemServer 中有一个 main()方法为系统服务的入口;
frameworks/base/services/java/com/android/server/SystemServer.java
在SystemServer 中的 main()方法中,就一句代码生成 SystemServer 对象,执行run 方法。在run()方法里启动了各类服务;
frameworks/base/services/java/com/android/server/SystemServer.java
SystemUi进入到SystemUIService的onCreate()方法里;在onCreate()方法中获得 SystemUIApplication 对象并调用其 startServicesIfNeeded() 方法
frameworks/base/packages/SystemUI/src/com/android/systemui/SystemUIService.java
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。