FrameWork层源码的分析(总纲)

本文详述了Android系统从启动到Framework层的关键过程,包括系统启动、Activity启动、Service启动、广播机制以及插件化和热修复框架的源码分析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

FrameWork层源码的分析

0)Android系统启动流程

简单描述:

  • 1 按下电源键开机,启动芯片代码,启动一个BootLoader小程序。
  • 2 BootLoader主要的功能是完成系统的设置,启动init.rc,init.cpp,init.zygote32.rc(8.0以后)
  • 3 init 启动zygote:通过rc文件,service.cpp找到相关的name,对应的main方法。即app_main.cpp的main方法。
  • 4 zygote启动SystemServer
    Zygote开启了Android世界。
    app_main.cpp是启动zygote进程的方法。
    AndroidRuntime.start() ----(启动虚拟机,)
    启动ZygoteInit的main方法执行。主要做了以下四件事
  1. 创建一个Server端的socket(LocalServerSocket)。
  2. 预加载类和资源。
  3. 启动SystemServer进程。
  4. 等待AMS请求创建新的应用程序进程。
    启动SystemServer, —> RuntimeInit.zygoteInit
    —>启动Binder线程池,这样就可以和其他进程通讯了,nativeZygoteInit();
    —>执行SystemServer的main方法,applicationInit(targetSdkVersion, argv, classLoader)
  • 5 SystemServer启动主线程,以及其他的系统服务。
    开启looper,创建mSystemServiceManager,启动服务器的小助手,
    启动引导服务,核心服务,其他服务
<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值