Android 13.0 SystemUI状态栏屏蔽掉通知栏不显示通知
1.概述
在13.0的系统产品开发中,在SystemUI定制化开发中,有产品需求要求屏蔽通知显示,由于对状态栏的通知管控的比较严,所以要求屏蔽掉通知栏的通知不显示通知
接下来就需要对通知栏的显示流程分析,屏蔽掉通知就可以了
2.SystemUI状态栏屏蔽掉通知栏不显示通知的核心类
frameworks/base/packages/SystemUI/res/layout/status_bar.xml
frameworks/base/packages/SystemUI/res/layout/status_bar_expanded.xml
frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/NotificationListener.java
3.SystemUI状态栏屏蔽掉通知栏不显示通知的核心功能分析和实现
SystemUI启动过程
1.在SystemServer 中启动的SystemUI;
2.SystemUIApplication 中启动根据config_systemUIServiceComponents配置的各组件(继承了SystemUI);
3.以StatusBars为例,状态栏StatusBars组件是配置的config_statusBarComponent,即com.android.systemui.statusbar.phone.StatusBar;StatusBar.start去做初始化等操作,createAndAddWindows生成布局---makeStatusBarView(里面updateTheme用于更新主题,inflateStatusBarWindow填充状态栏布局,对应super_status_bar.xml)