SystemUI启动,及其SystemUIService启动
SystemUI启动,及其SystemUIService启动
android12-release
SystemServer.run() - startOtherServices - startSystemUi - context.startServiceAsUser - windowManager.onSystemUiStarted()
frameworks/base/core/res/res/values/config.xml
SystemUIService
com.android.systemui/com.android.systemui.SystemUIService
启动服务SystemUIService,运行在进程com.android.systemui
context.startServiceAsUser - SystemUIService.onCreate() - getApplication()).startServicesIfNeeded()
SystemUI服务要启动的类frameworks/base/packages/SystemUI/res/values/config.xml:config_systemUIServiceComponents
<!-- SystemUI Services: The classes of the stuff to start. --><string-array name="config_systemUIServiceComponents" translatable="false"><item>com.android.systemui.util.NotificationChannels</item><item>com.android.systemui.keyguard.KeyguardViewMediator</item><item>com.android.systemui.recents.Recents</item><item>com.android.systemui.volume.VolumeUI</item><item>com.android.systemui.statusbar.phone.StatusBar</item><item>com.android.systemui.usb.StorageNotification</item><item>com.android.systemui.power.PowerUI</item><item>com.android.systemui.media.RingtonePlayer</item><item>com.android.systemui.keyboard.KeyboardUI</item><item>com.android.systemui.shortcut.ShortcutKeyDispatcher</item><item>@string/config_systemUIVendorServiceComponent</item><item>com.android.systemui.util.leak.GarbageMonitor$Service</item><item>com.android.systemui.LatencyTester</item><item>com.android.systemui.globalactions.GlobalActionsComponent</item><item>com.android.systemui.ScreenDecorations</item><item>com.android.systemui.biometrics.AuthController</item><item>com.android.systemui.SliceBroadcastRelayHandler</item><item>com.android.systemui.statusbar.notification.InstantAppNotifier</item><item>com.android.systemui.theme.ThemeOverlayController</item><item>com.android.systemui.accessibility.WindowMagnification</item><item>com.android.systemui.accessibility.SystemActions</item><item>com.android.systemui.toast.ToastUI</item><item>com.android.systemui.wmshell.WMShell</item></string-array>
例如com.android.systemui.statusbar.phone.StatusBar
startServicesIfNeeded - new StatusBar - StatusBar.start()
start():
- createAndAddWindows(result) 添加状态栏
- setUpPresenter() 设置初始通知状态NotificationsController.initialize
- startKeyguard()
- … …
流程图
SystemUI启动,及其SystemUIService启动相关推荐
- Android 8.0学习(27)--- SystemUI(二)启动流程和初始化
Android 8.0 SystemUI(二):启动流程和初始化 这篇的话,将对SystemUI的启动和大体的初始化作描述.篇幅应该比上篇多了些.哈哈. 老样子,先上目录,简洁明了. 概述 由于需要实 ...
- android uboot启动过程,Android启动流程简析(一)
最近一时兴起,想对Android的启动流程进行一次分析,经过一番整理,从以下几个方面进行总结,代码部分只讨论思路,不论细节. Android架构介绍 Android启动概述 BootLoader介绍 ...
- linux停止mysql后又自己启动,Linux上 mysql启动/停止/重启/开机启动/开机禁止启动...
1.查看mysql版本 方法一:status; 方法二:select version(); 2.Mysql启动.停止.重启常用命令 a.启动方式 1.使用 service 启动: [root@loca ...
- Linux设置程序开机启动-tomcat开机启动
假设我有一个tomcat应用需要开机启动. 前提你的JAVA环境变量已经配置好没有问题,检测方法如图 然后找到tomcat的目录,我的目录是 /home/yuqing_4.0/tomcat_share ...
- linux apache无法启动,linux mysq 无法启动 apache 无法启动
linux mysq 无法启动 apache 无法启动Starting MySQL.The server quit without updating PID file (/[FAILED]nux/my ...
- Linux启动跟windows启动,Windows,Linux启动机制简介
前言 本文内容只集中在操作系统启动原理的讲解上,不涉及启动的技术细节,因为这些细节都可以通过网络或者相关代码了解.只有了解了启动原理,才能在分析和解决有关启动的问题时具有针对性,不会有无从下手的感觉. ...
- Windows PE入门基础知识:Windows PE的作用、命名规则、启动方式、启动原理
Windows PE的全名是WindowsPreinstallationEnvironment(WinPE)直接从字面上翻译就 是"Windows预安装环境".微软的本意是:Win ...
- 【Android 启动过程】Android 应用启动流程 | Activity 启动流程
文章目录 一.Android 系统启动流程 二.Activity 启动流程 一.Android 系统启动流程 打开 Android 手机电源键后 , 先运行 BootLoader , 然后使用 Boo ...
- 【Android 插件化】Hook 插件化框架 ( Hook Activity 启动流程 | AMS 启动前使用动态代理替换掉插件 Activity 类 )
Android 插件化系列文章目录 [Android 插件化]插件化简介 ( 组件化与插件化 ) [Android 插件化]插件化原理 ( JVM 内存数据 | 类加载流程 ) [Android 插件 ...
最新文章
- css 在线生成器,CSS Sprites在线生成器
- JSP——JSTL语法总结
- Kubernetes从懵圈到熟练:认证与调度
- 小米电视面板采购“砍单”
- 从一张截图看秒开缓存的强大功效
- abaqus实例手册_《ABAQUS 6.14超级学习手册》——1.5 ABAQUS帮助文档-阿里云开发者社区...
- 污水处理施耐德TM218PLC程序
- 如何批量提取多个 PDF 文档中的图片
- php加密=>python解密或者python加密=>php解密
- AUTOCAD——文字样式
- 5APMP项目管理:PMP考试备考经验学习方法和模拟考题(1-经验篇)
- docker 配置 CA验证
- 成功解决Fatal error in launcher: Unable to create process using ‘“…python.exe“ “…jupyter.exe“ notebook‘
- JVM中栈的frames详解
- CrystalDiskInfo硬盘检测工具 标准版及萌妹版
- Vue 源码解读 起步(二)
- bs4爬虫:获取双色球中奖信息
- SAP 科目的 未清项管理的理解
- 如何查询网页游戏服务器记录,如何查询网页游戏服务器记录
- Grads转成Netcdf
热门文章
- Camstudio-免费的屏幕录像软件中文版下载使用教程:
- A/D转换器和D/A转换器
- 基于多因子模型,利用申万行业分类对量化公募基金进行分析
- java camel,无“to”端点的Apache Camel路由
- 百度地图以“准”作则,诠释AI时代新出行
- OSS brower js SDK
- XMOS 开发探索0- 新建工程,刷入程序
- 脚本一键部署(dhcp、dns、pxe、raid、nfs+apache+expect、lvm、磁盘分区、监控资源)
- 读书VS整容,出国留学不如当网红?
- html如何同时选择多个选择器,JS中如何使用选择器选择多个元素