[RK3288][Android6.0] SystemUI加载过程(状态栏和导航栏)

本文详细探讨了在RK3288平台上的Android 6.0系统中,SystemUI的加载过程,包括从startSystemUi开始,涉及SystemServer.java的相关内容。同时,文章还深入介绍了状态栏和导航栏的初始化及布局机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Platform: Rockchip
OS: Android 6.0
Kernel: 3.10.92

startSystemUi -> SystemServer.java

  context.startServiceAsUser ->  //ComponentName: com.android.systemui
    onCreate -> SystemUIService.java
       getApplication().startServicesIfNeeded -> //SystemUIApplication
         SystemUIApplication -> SystemUIApplication.java 
           mServices[i].start() -> //SERVICES数组定义了运行的子服务列表,将会被依次启动
             start -> SystemBars.java //这里只关注statusbar
               new ServiceMonitor //mCallbacks是systemBars类,下面要用到
               mServiceMonitor.start
                 mHandler.sendEmptyMessage -> ServiceMonitor.java //MSG_START_SERVICE
                   handleMessage ->
                     startService ->
                       mCallbacks.onNoService ->
                         onNoService -> SystemBars.java
                           createStatusBarFromConfig ->
                             mContext.getString //从xml获取类名: R.string.config_statusBarComponent
//在文件frameworks/base/packages/SystemUI/res/values/config.xml中
//为com.android.systemui.statusbar.phone.PhoneStatusBar
                             mContext.getClassLoader().loadClass //加载类
                             mStatusBar.start ->
                               start -> PhoneStatusBar.java
                                 super.start //调用父类即BaseStatusBar
                                   start -> BaseStatusBar.java
                                     ServiceManager.getService(Context.STATUS_BAR_SERVICE))  //获取到对应的是StatusBarManagerService
                                     mBarService.registerStatusBar //将自己注册到SystemBarService中,SystemBarService的处理都交由它实现
                                     createAndAddWindows ->  PhoneStatusBar.java //创建状态栏和导航栏窗口
                                       addStatusBarWindow ->
                                         makeStatusBarView //构造view
                                         new StatusBarWindowManager
                                         mStatusBarWindowManager.add //添加状态栏的view到窗口中
                                 addNavigationBar //添加导航栏view到窗口中
                                 new PhoneStatusBarPolicy //定义系统通知图标的设置策略


SERVICES列表:

private final Class<?>[] SERVICES = new Class[] {
            com.android.systemui.tuner.TunerService.class, //定制状态栏服务
            com.android.systemui.keyguard.KeyguardViewMediator.class,//锁屏模块
            com.android.systemui.recents.Recents.class,//最近应用
            com.android.systemui.volume.VolumeUI.class,//全局音量控制
            com.android.systemui.statusbar.SystemBars.class,//系统状态栏
            com.android.systemui.usb.StorageNotification.class,//Storage存储通知
            com.android.systemui.power.PowerUI.class,//电量管理相关
            com.android.systemui.media.RingtonePlayer.class,//铃声播放
            com.android.systemui.keyboard.KeyboardUI.class,//键盘相关
};

       

参考:

SystemUI启动流程及主体布局介绍


### 回答1: rk3288 android 6.固件是一款基于Rockchip RK3288芯片的Android 6.操作系统固件。该固件具有稳定性高、功能丰富、操作简便等特点,适用于各种智能设备的开发应用。如果您需要使用该固件,请注意选择适合您设备的版本,并按照相关的安装步骤进行操作。同时,为了保证设备的安全稳定性,请务必备份好重要数据,并遵守相关的使用规定。 ### 回答2: RK3288 Android 6.0固件是一种为RK3288芯片设计的操作系统,旨在提供更高效、稳定安全的用户体验。这款固件在保持原版Android特点的同时,针对RK3288芯片进行了优化,充分利用了硬件性能资源,提高了设备的响应能力运行速度。以下是该固件的主要特点优势: 1.更稳定的操作系统:RK3288 Android 6.0固件采用了最新的安卓系统6.0,加上对RK3288硬件平台的深度优化,使得这个固件的稳定性兼容性得到了提升。 2.更流畅的用户体验:该固件针对RK3288芯片进行了深度优化,充分发挥了其强大的处理能力,从而提高了设备的响应速度运行效率,让用户感受更加流畅的使用体验。 3.更丰富的应用支持:由于RK3288 Android 6.0固件是基于最新的安卓操作系统开发,因此可以支持更多的第三方应用程序游戏,满足用户的不同需求使用场景。 4.更安全的系统保护:该固件采用了安全性更强的编码技术,增强了系统的安全性稳定性,为用户提供更加安全的使用环境。 总之,RK3288 Android 6.0固件是一款功能强大、性能优越、稳定性高、兼容性好,而且完全免费的操作系统。它可以带给用户更加流畅的使用体验、更加丰富的应用体验更加安全的系统保护,是一款值得尝试使用的操作系统。 ### 回答3: RK3288是一款由瑞芯微(Rockchip)公司生产的基于ARM Cortex-A17的处理器芯片,适用于智能电视、平板电脑、工业控制等领域。这款处理器拥有强大的性能图像处理能力,在市场上受到了广泛的认可应用。 Android 6.0Android移动操作系统的一个版本,也被称为Marshmallow。它是Android 5.0 Lollipop的后继版本,具有更多的功能、改进的安全性更好的性能。作为一个主流的移动操作系统,Android 6.0提供了许多应用程序工具,可以为用户提供更流畅、更高效、更安全的使用体验。 固件指针对某种硬件平台的操作系统及其所需的应用程序驱动程序的一种集合。RK3288 Android 6.0固件,便是基于RK3288平台的Android 6.0操作系统以及与之配合的应用程序驱动程序的一个集合。 在使用中,这种固件的优越性非常明显。它可以让基于RK3288处理器的设备能够运行更为高效的Android 6.0系统,同时, RK3288 Android 6.0固件还可以为这些设备提供更丰富的应用程序功能。例如Android 6.0移植了Google Now on Tap的新功能,可以根据用户的输入智能推测出用户所需要的信息,减少用户的搜索次数,提高用户效率。 综上所述,RK3288 Android 6.0固件可谓是一款非常优秀的固件,它让基于RK3288处理器的设备平台能够拥有更为高效、便捷安全的移动操作系统,提升了用户的使用体验。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值