1.源码分析之——AMS启动流程
2.源码分析之——WMS启动流程
3.源码分析之——SharedPreferences
4.源码分析之——Retrofit
5.源码分析之——OKHttp
6.源码分析之——Android事件分发机制
前言
上一节讲了Activity启动流程,下面针对WMS启动做一个简单的介绍。以Android10.0 aosp为基础进行梳理。
谨以此记录下学习流程,欢迎广大博友交流指正。是时候提高一波了。。。
启动流程
简单分析
SystemServer类中run()方法在执行的时候会启动三类服务,分别为:startBootstrapServices(),startCoreServices(),startOtherServices()。其中WMS启动就是在startOtherServices()中执行。
如图所示分为四个步骤(无关代码已经省略)。
1.main()方法用来创建一个WindowManagerService实例。
2.onInitReady()方法主要调用initPolicy()用来初始化PhoneWindowManager。
3.displayReady()主要初始化UI尺寸。
4.systemReady()启动准备工作完成。