- 文章来自:http://blog.csdn.net/moliyll/article/details/41945083
-
- public void showSystembar(boolean makeVisible) {
- checkInitialized();
- try {
- // get the existing environment
- ArrayList<String> envlist = new ArrayList<String>();
- Map<String, String> env = System.getenv();
- for (String envName : env.keySet()) {
- envlist.add(envName + "=" + env.get(envName));
- }
- String[] envp = (String[]) envlist.toArray(new String[0]);
- // depending on makeVisible, show or hide the bar
- if (makeVisible) {
- Log.v(TAG, "showBar will show systembar");
- // execute in correct environment
- String command;
- Device dev = Device.getInstance();
- if (dev.getAndroidVersion() == AndroidVersion.HC) {
- command = "LD_LIBRARY_PATH=/vendor/lib:/system/lib am startservice -n com.android.systemui/.SystemUIService";
- //The four nucleus Tablet hide or display systemui
- } else if(dev.getAndroidVersion() == AndroidVersion.JELLYBEAN4_2) {
- command = "su -c am startservice -n com.android.systemui/.SystemUIService ";
- //The four nucleus Tablet hide or display systemui
- } else {
- command = "rm /sdcard/hidebar-lock\n"
- + "sleep 5\n"
- + "LD_LIBRARY_PATH=/vendor/lib:/system/lib am startservice -n com.android.systemui/.SystemUIService";
- }
- //The four nucleus Tablet hide or display systemui
- if(dev.getAndroidVersion() == AndroidVersion.JELLYBEAN4_2) {
- Runtime.getRuntime().exec(command);
- } else{
- Runtime.getRuntime().exec(new String[] { "su", "-c", command }, envp);
- }
- //The four nucleus Tablet hide or display systemui
- // no proc.waitFor();
- // we just shown the bar, set flag to visible
- mSystembarVisible = true;
- } else {
- Log.v(TAG, "showBar will hide the systembar");
- // execute in correct environment
- String command;
- Device dev = Device.getInstance();
- if (dev.getAndroidVersion() == AndroidVersion.HC) {
- command = "LD_LIBRARY_PATH=/vendor/lib:/system/lib service call activity 79 s16 com.android.systemui";
- //The four nucleus Tablet hide or display systemui
- } else if(dev.getAndroidVersion() == AndroidVersion.JELLYBEAN4_2) {
- command = "su -c service call activity 42 s16 com.android.systemui";
- //The four nucleus Tablet hide or display systemui
- } else {
- command = "touch /sdcard/hidebar-lock\n"
- + "while [ -f /sdcard/hidebar-lock ]\n"
- + "do\n"
- + "killall com.android.systemui\n"
- / + "sleep 1\n"
- + "usleep 500000\n"
- + "done\n"
- + "LD_LIBRARY_PATH=/vendor/lib:/system/lib am startservice -n com.android.systemui/.SystemUIService";
- }
- //The four nucleus Tablet hide or display systemui
- if(dev.getAndroidVersion() == AndroidVersion.JELLYBEAN4_2) {
- Runtime.getRuntime().exec(command);
- } else{
- Runtime.getRuntime().exec(new String[] { "su", "-c", command }, envp);
- }
- //The four nucleus Tablet hide or display systemui
- // no proc.waitFor();
- // we just hide the bar, set flag to not visible
- mSystembarVisible = false;
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
Android 永久隐藏导航栏,系统栏的方法
最新推荐文章于 2025-03-24 14:49:27 发布