SystemUI简介
- 简介
SystemUI应用是一个持久化进程,它为用户提供系统级别的信息显示与交互的一套UI组件,其 UID 是 SYSTEM_UID,值为1000,是系统核心应用,能够使用系统级权限,能够访问系统隐藏的API(@hide方法)和internal资源,在开机时由 SystemServer 启动 SystemUIService 实现应用启动。
SystemUI | 普通应用 | |
UID | 1000 | 应用安装时分配,>10000 |
编译方式 | 基于Android源码编译 | 基于Android SDK编译 |
安装方式 | adb push SystemUI.apk /system/priv-app/SystemUI | adb install App.apk |
安装位置 | /system/priv-app/ | /data/app/ |
数据位置 | /data/user_de/ | /data/data/ |
启动方式 | 系统启动 | 点击桌面应用图标 |
代码位置 | Framework/base/package |
- 功能介绍
SystemU包含功能有:导航栏,状态栏,通知栏,近期列表等
组件 | 功能 |
NotificationChannels | 创建SystemUI的通知Channel |
KeyguardViewMediator | |
Recents | 最近任务 |
VolumeUI | 音量面板 |
Divider | 分屏 |
StatusBar | 顶部状态栏+快捷开关+通知面板+底部导航键 |
StorageNotification | 存储设备相关通知 |
PowerUI | 低电量提醒 |
RingtonePlayer | 播放铃声(包括通知铃声) |
KeyboardUI | 键盘 |
PipUI | 画中画 |
ShortcutKeyDispatcher | |
GarbageMonitor$Service | 定期检查SystemUI堆内存并报告 |
LatencyTester | 在DEBUGGABLE版本运行,用于测试系统中的延迟 |
GlobalActionsComponent | 关机菜单 |
ScreenDecorations | 手机屏幕屏切圆角,模拟刘海屏 |
AuthController | 显示生物识别UI(指纹认证,人脸认证) |
SliceBroadcastRelayHandler | |
SizeCompatModeActivityController | |
InstantAppNotifier | 显示Instant Apps(用户设备不需要安装的应用)的通知 |
ThemeOverlayController | |
WindowMagnification | 管理窗口放大镜 |
ToastUI | 在SystemUI进程显示其他应用的Toast |
SystemActions |
services组件启动时配置列表 : (R.array.config_systemUIServiceComponents)
所有 SystemUIService 都是继承自 SystemUI.class , SystemUI.class 是一个抽象类
|