析过StatusBar上图标显示的流程,现在分析一下在Android2.3中,StatusBar的架构,其实StatusBar的实现方法还是进行了许多大的修正的,比如原来StatusBar的操作都是在Service进程中,现在许多图标显示更新等的操作都移到了应用进程中。
代码目录结构:
主要位于两个目录中
1,frameworks/base/services/java/com/android/server
这个目录在以前版本中也有
2,frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar
这个目录是2.3版本新增加的,把许多界面的操作做到了应用里。
主要架构:
1、StatusBarManager是供应用层调用的接口,它会通过Binder机制调用到StatusBarManagerService。
2、StatusBarMangerService位于Service进程中,是由 ServerThread创建的,它与NotificationManagerService和InputMethodManagerService进行交互。
3、StatusBarManagerService在被创建的时候会启动一个应用层的Service -StatusBarService,创建StatusBarView,增加减少Icon等等的处理,都是在这个Service中。
我们现在已经把statusbar独立为一个系统apk
架构图如下:
[img]http://dl.iteye.com/upload/attachment/515152/900f4b82-c407-3f8f-b653-4a3111d2d805.gif[/img]
代码目录结构:
主要位于两个目录中
1,frameworks/base/services/java/com/android/server
这个目录在以前版本中也有
2,frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar
这个目录是2.3版本新增加的,把许多界面的操作做到了应用里。
主要架构:
1、StatusBarManager是供应用层调用的接口,它会通过Binder机制调用到StatusBarManagerService。
2、StatusBarMangerService位于Service进程中,是由 ServerThread创建的,它与NotificationManagerService和InputMethodManagerService进行交互。
3、StatusBarManagerService在被创建的时候会启动一个应用层的Service -StatusBarService,创建StatusBarView,增加减少Icon等等的处理,都是在这个Service中。
我们现在已经把statusbar独立为一个系统apk
架构图如下:
[img]http://dl.iteye.com/upload/attachment/515152/900f4b82-c407-3f8f-b653-4a3111d2d805.gif[/img]