android2.3 FrameWork对StatusBar处理流程

android2.3 以后对StatusBar的处理从以前的framework抽出成了app,放在  framework/base/packages/SystemUI


关系到的代码有,如下:

1,frameworks/base/services/java/com/android/server

2,frameworks/base/packages/SystemUI/

3.frameworks/base/core/java/android/app/StatusBarManager.java


调用过程如下:


1.  初始化过程

      frameworks/base/services/java/com/android/server/SystemServer.java

      -> ServerThread->run()->

      statusBar = new StatusBarManagerService(context);
      ServiceManager.addService(Context.STATUS_BAR_SERVICE, statusBar);     初始化  StatusBarManagerService

      ->systemReady2()    启动  StatusBarService


2.   调用过程

       1)  APP层通过得到StatusBar的服务获取到StatusBarManager对象,然后通过Binder调用StatusBarManagerService

       2)  StatusBarManagerService 通过使用IStatusBar的aidl 调用 CommandQueue

             在CommandQueue 中定义Callbacks 

       3)   StatusBarService 实现了CommandQueue的回调


3.    总结

       StatusBarManagerService 是StatusBar处理的核心,而具体做实际事情的是StatusBarService

       本人只是看了整个流程,可能有missing的地方,请阅者给出意见

 

4.    流程图如下

     




     

   


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值