当前位置: 代码迷 >> Android >> Android平板掩藏系统状态栏
  详细解决方案

Android平板掩藏系统状态栏

热度:27   发布时间:2016-05-01 12:59:26.0
Android平板隐藏系统状态栏

1. 收集的相关资料

Android FrameWork——StatusBar
http://blog.csdn.net/stonecao/article/details/6642727

android 状态栏(StatusBar)
http://wpf814533631.iteye.com/blog/1585085

android去掉系统状态栏(StatusBar),让所有app程序均是全屏显示
http://blog.csdn.net/javashu2012/article/details/7791784


2. Android系统架构图


?



3. 熟悉以上资料后,开始动手修改。

第一步:定位到状态栏的源码路径:frameworks\base\packages\SystemUI

原来是一个独立的APP,执行mmm就可以编译出一个独立的APK

第二步:找到平板对应的java文件:com.android.systemui.statusbar.tablet.TabletStatusBar

修改对应的源码:

?

?

    public void start() {        super.start(); // will add the main bar view	   // mStorageManager = (StorageManager) mContext.getSystemService(Context.STORAGE_SERVICE);           //mStorageManager.registerListener(new com.android.systemui.usb.StorageNotification(mContext));	   mStatusBarView.setVisibility(View.GONE);	   mNotificationPanel.setVisibility(View.GONE);    }
?

第三步:执行命令:

$ source build/envsetup.sh

$ mmm frameworks/base/packages/SystemUI/

?

第四步:定位到out/target/product/rk29sdk/system/app/SystemUI.apk,安装到平板里面

?

本以为大功告成,重启平板后,状态栏上的按钮倒都去掉了,可是底部还是有一个黑色条。

?

?

4. 找了很久,试了很多种方案,底部的黑色条还是隐藏不了,后来实在是没有办法,用一种比较怪异的方案解决了这个问题。大致思路就是在系统加载时,让系统认为是PhoneStatusBar,然后在PhoneStatusBar.java的对应部分隐藏状态栏。

  相关解决方案