SystemServer 浅析

作者: 程序员Android1 | 来源:发表于2018-06-08 11:56 被阅读25次

本篇文章主要介绍 Android 开发中 SystemServer进程启动 部分知识点,通过阅读本篇文章,您将收获以下内容:

1.SystemServer 进程启动导图
2.SystemServer 启动过程分析
3.SystemServer 开启Service 流程
4.SystemServer 开启引导服务实现
5.SystemServer 开启核心服务实现
6.SystemServer 开启其他服务实现

欢迎关注微信公众号:程序员Android
公众号ID:ProgramAndroid
获取更多信息

微信公众号:ProgramAndroid

我们不是牛逼的程序员,我们只是程序开发中的垫脚石。
我们不发送红包,我们只是红包的搬运工。

1. SystemServer 进程启动导图

SystemServer 进程启动导图

2. SystemServer 启动过程分析

SystemServer 代码路径

\alps\frameworks\base\services\java\com\android\server\SystemServer.java

    1. main 方法
systemServer main 方法
    1. Run 方法中初始化 时间,时区,语言等
Run 方法中初始化信息
    1. 设置VM 内存,准备 main looper 初始化 Native 服务
设置VM 内存,准备 main looper 初始化 Native 服务
    1. 检测最近一次触发关机是否失败
performPendingShutdown performPendingShutdown 实现
    1. 初始化 system context
初始化System context
    1. 创建 systemServiceManager
创建 systemServiceManager
    1. 将 systemServiceManager添加到LocalServices
将 systemServiceManager添加到LocalServices
    1. 初始化systemServer 线程池
初始化systemServer 线程池

3. SystemServer 开启Service 流程

开启Service
    1. 开启引导服务
开启引导服务导图
    1. 开启核心服务
开启核心服务 导图
    1. 开启其他服务
开启其他服务导图

4. SystemServer 开启引导服务实现

startBootstrapServices实现

startBootstrapServices1 startBootstrapServices 2 startBootstrapServices 3

5.SystemServer 开启核心服务实现

startCoreServices

startCoreServices

6.SystemServer 开启其他服务实现

startOtherServices

startOtherServices startOtherServices startOtherServices startOtherServices startOtherServices 确认各个Service 已准备就绪 启动SystemUI 启动SystemUI 确认watchdog Thrid app Location 等已准备好

至此,本篇已结束,如有不对的地方,欢迎您的建议与指正。期待您的关注,
感谢您的阅读,谢谢!

如有侵权,请联系小编,小编对此深感抱歉,同时小编会立即停止侵权行为。

​欢迎关注微信公众号:程序员Android
公众号ID:ProgramAndroid
获取更多信息

微信公众号:ProgramAndroid

我们不是牛逼的程序员,我们只是程序开发中的垫脚石。
我们不发送红包,我们只是红包的搬运工。

点击阅读原文,获取更多福利


相关文章

网友评论

    本文标题:SystemServer 浅析

    本文链接:https://www.haomeiwen.com/subject/ftuwsftx.html