在果冻豆片中隐藏系统栏(根)

我有一个Android的果冻豆平板电脑已经扎,并试图运行一个应用程序的代码来隐藏系统栏,但没有被隐藏任何一个可以帮助我在这个。

在terminal中获取输出: Result Parcel(00000000 '....')

 public class MainActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button hide=(Button)findViewById(R.id.button1); Button show=(Button)findViewById(R.id.button2); hide.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub Log.v("ds", "hideSystembar"); try { Process proc = Runtime.getRuntime().exec(new String[]{ "su","-c","service call activity 79 s16 com.android.systemui"}); proc.waitFor(); } catch (Exception e) { e.printStackTrace(); } } }); show.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub Log.v("f", "showSystembar"); try { Process proc = Runtime.getRuntime().exec(new String[]{ "am","startservice","-n","com.android.systemui/.SystemUIService"}); proc.waitFor(); } catch (Exception e) { e.printStackTrace(); } } }); } } 

虽然我得到了许可的批准: 在这里输入图像说明

超级用户日志屏幕截图: 在这里输入图像说明

Solutions Collecting From Web of "在果冻豆片中隐藏系统栏(根)"

引入ICS时, SystemUI类的进程ID从79变为42。
下面的代码适用于您的应用程序可能运行的任何Android版本。

 //HIDE TOOLBAR try{ //REQUIRES ROOT Build.VERSION_CODES vc = new Build.VERSION_CODES(); Build.VERSION vr = new Build.VERSION(); String ProcID = "79"; //HONEYCOMB AND OLDER //v.RELEASE //4.0.3 if(vr.SDK_INT >= vc.ICE_CREAM_SANDWICH){ ProcID = "42"; //ICS AND NEWER } //REQUIRES ROOT Process proc = Runtime.getRuntime().exec(new String[]{"su","-c","service call activity "+ ProcID +" s16 com.android.systemui"}); //WAS 79 proc.waitFor(); }catch(Exception ex){ Toast.makeText(getApplicationContext(), ex.getMessage(), Toast.LENGTH_LONG).show(); } 

我写了一篇文章,解释了如何获取root权限,甚至在Android 4.2上隐藏/显示系统栏

http://masashi-k.blogspot.com/2013/09/hide-show-system-bar-of-android.html

使用RootTools库获取root权限。 在这里输入图像说明

隐藏系统栏 在这里输入图像说明