Закрепить панель навигации андроид. Управление панелью навигации (виртуальными клавишами) на смартфонах и планшетах Huawei

07.07.2020

В новой системе Android KitKat предусмотрено автоматическое скрытие виртуальных кнопок в играх и приложениях, после чего они запускаются во весь экран. Это конечно удобно, но что делать пользователям, чьи устройства еще не получили данное обновление, да и даже на Sony Xperia Z2 с новой версией системы также порой наблюдается, что сама панель с виртуальными кнопками порой не скрывается. В данной инструкции я расскажу, как эффективно скрыть кнопки внизу экрана и строки состояния с помощью модуля GravityBox. Для работы данной инструкции необходимо иметь права ROOT пользователя и установленное приложение Xposed для запуска модуля.

Скачайте GravityBox по ссылкам внизу данного мануала. Обратите внимание, что для версий KitKatи JellyBean разные версии программы. Установите его как простое приложение из apkфайла, после чего перейдите в Xposed, вкладка “Модули” и активируйте Гравити Бокс, поставив галочку. После этого перезагрузите смартфон.

Теперь, вам нужно перейти непосредственно в меню приложений, найдите там GravityBox и запустите его. Опция, отвечающая за то, как скрыть кнопки навигации находится: “Настройки экрана” – “Расширенный рабочий стол”, после этого отметьте “Погружение” (Прятать все) или выберите другой вариант в зависимости от того, что вы хотите скрывать.

Теперь для того чтобы скрыть панель навигации с кнопками внизу экрана зажмите кнопку выключения и в меню вы увидите новый пункт “Расширенный рабочий стол”, после нажатия которой кнопки и строка состояния будут скрываться и появляться когда вы коснетесь краев экрана. Для отключения расширенного рабочего стола снова зажмите кнопку питания и отключите данный пункт.

Я хотел бы расширить дискуссию о скрытии системы/панели навигации в нижней части экрана на планшетах Android Ice Cream Sandwich (4.0 и выше).

12 ответов

на корневых устройствах, я использую следующую команду adb

Adb shell pm disable com.android.systemui

чтобы скрыть навигационную панель навсегда. Чтобы снова показать его, запустите

adb shell pm enable com.android.systemui

пока он отлично работает для меня

Использование приведенного ниже кода - один из способов сделать это, чтобы скрыть навигацию.

GetWindow().getDecorView() .setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);

Но проблема с вышеизложенным заключается в том, что он становится видимым, как только пользователь коснется экрана.

В Android Kitkat есть функция, называемая IMMERSIVE , которая скрывает панель уведомлений и навигацию. Он не отображается, даже если пользователь взаимодействует с экраном. Однако пользователь может сделать это видимым, прокручивая его сверху вниз. Ниже приведен код для его достижения.

//Initializew this in onCreate() View mDecorView = getWindow().getDecorView(); //Then call this function private void hideSystemUI() { mDecorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_LOW_PROFILE | View.SYSTEM_UI_FLAG_IMMERSIVE); }

Однако в моем случае я никогда не хотел, чтобы панель навигации и уведомлений была видна, даже если пользователь перебирает верхнюю часть экрана. Я попробовал, и я смог добиться этого частично. То, что я сделал, было реализовано CountDownTimer , которое вызывало бы hideSystemUI() каждую секунду или около того. Я знаю, что это не лучший способ сделать это. Но у меня не было другого решения.

Если кто-то получит какие-либо, то, пожалуйста, дайте мне знать о том, как надолго скрыть навигацию и панель уведомлений:) Надеюсь, этот ответ поможет кому-то в будущем:)

Обновление - есть работа, которая может быть использована для таких случаев (ручная настройка приложения для клиента). Действительно, панель навигации не может быть удалена в рамках данной структуры.

Тем не менее, существует решение скрыть панель навигации, если для вас используется опция . Вот как:

В HideBar есть возможность запускаться в режиме "Киоск", в котором нет возможности повторно отобразить панель навигации. Излишне говорить, что вам действительно нужно быть осторожным с этим.

Применяемые риски:

    удаление устройства

    неправильная установка BusyBox, что может немного затруднительно, хотя вряд ли это приведет к потере информации.

    войти в тупик, где вы не можете выйти из приложения. Например, если 1 ваш графический интерфейс не предоставляет опцию закрытия, 2 ваше приложение запускается автоматически при запуске, 3 HideBar не позволяет каким-либо образом повторно отображать панель навигации, а 4 HideBar скрывает панель навигации при запуске. это можно преодолеть, просто остановив/удалив ваше приложение из adb.

Вот и другие одинаковые вопросы:

EDIT: с 4.4 (19) вы можете использовать следующее, чтобы включить то, что называется "IMMERSIVE MODE". Он был введен для Google Cardboard vrtoolkit, но может использоваться в целом.

setSystemUiVisibility(View.SYSTEM_UI_FLAG_IMMERSIVE)

Из моих усилий кажется, что: setSystemUiVisibility (View.SYSTEM_UI_FLAG_HIDE_NAVIGATION) не работает на планшетах.

Он работает на смартфонах (протестирован с Nexus 4 Mako), но он снова появится на событии touch/click. Это также, похоже, фиксирует фокус на панели, заставляя вас дважды щелкнуть, чтобы вернуть фокус в представление.

Я пытаюсь найти способ захватить событие, которое на самом деле перерисовывает панель. Не повезло.

Будучи упрямым, я собираюсь загрузить код android os, запустите отладчик eclipse и перейдите в huntin. Это не ошибка. Навигационная панель имеет решающее значение для жизненного цикла приложения.

Я видел приложения, которые делают это (игры и т.д.), поэтому есть способ без rooting.

Вы не можете скрыть его, если вы не укоренились в устройстве. Но, конечно, есть обходное решение, которое может не соответствовать вашему требованию, но несколько известных приложений на рынке в настоящий момент используют эту стратегию для достижения этой запретной функции панели меню для своих приложений.

  • Предоставить привилегии администратора.
  • Установите пароль и заблокируйте устройство, используя профиль admin admin api
  • Затем загрузите пользовательские интерфейсы поверх встроенного экрана блокировки. (Конечно, это будет показывать экран блокировки фона всякий раз, когда происходит переход между действиями. Но если логика организована хорошо, тогда пользователь будет плавным и менее заметным).
  • Когда нужно включить обратно, reset password to ", используя resetPassword (" ", 0) объекта менеджера политики устройства.

Мне действительно очень нравится последние версии Android и я уверен, что эта мобильная операционная система на сегодняшний день является самой перспективной. Но некоторые ее функции даже у меня вызывают некоторое недоумение. Например, зачем в планшетной версии столько места внизу занимает служебная черная панель, когда каждый дюйм в мобильных устройствах буквально на счету? Неужели нельзя было реализовать ее функциональность каким-либо другим образом?

Оказывается можно. Разработчики приложения full!screen прекрасно это доказывают.

full!screen — это небольшая утилита для Android 3 или 4, которая умеет скрывать системную панель внизу экрана. Если у вас устройство, на котором присутствуют аппаратные кнопки Домой , Назад и Меню , то одного этого уже достаточно, чтобы полюбить эту утилиту. Тем более, что отображать уведомления она прекрасно умеет.

После запуска программы (требуется права суперпользователя ) надоевшая нам панель прячется, а вместо нее мы видим две полупрозрачные области в углах экрана. Их расположение и действия при нажатии устанавливаются в настройках full!screen. Вы можете активировать две таких области, одну, или вообще ни одной, разместить их в любом углу, настроить размер, цвет и прозрачность.

Взаимодействие с кнопками осуществляется простым или долгим тапом, причем каждому движению можно назначить свою операцию, среди которых мы видим Домой, Назад, Список последних приложений, Показать панель, Показать уведомления и так далее.

Если же вам не хватает двух кнопок по углам для выполнения всех желаемых операций, то можете превратить их в появляющиеся по вашему тапу круговые меню (см. первый скриншот), куда можете насовать столько действий, сколько вам нужно.

Утилита full!screen обязательно пригодится всем обладателям планшетов, которые захотят немного расширить полезную площадь экрана своего устройства, особенно в играх, во время чтения, серфинга или просмотра видео. Приложение бесплатно, но существует и платная версия, умеющая автоматически прятать панель при запуске определенных приложений.

На некоторых смартфонах Huawei, в частности Ascend D2, Mate, P6, и планшете Huawei Mediapad 10 FHD привычные сенсорные клавиши были заменены на виртуальные. Данное техническое решение определенно весьма интересно, однако существенным недостатком является использования части экрана для этой самой виртуальной панели навигации. Инженеры Хуавей нашли решение данной проблемы и реализовали возможность сворачивания виртуальных клавиш (Назад, Домой и Меню) в прошивках на базе Android 4.1.2.


К сведению, Google реализовали эту фишку лишь в Android 4.4 KitKat, а Huawei запретили ее использование в своих прошивках еще полгода назад.

Но благодаря тому, что данная возможность уже была реализована в прошивке, то её можно достаточно легко активировать.

Способ первый:

Для этого активации сворачивания панели данным способом необходимо, чтобы на вашем смартфоне были получены root права и установлен файловый менеджер, способный работать с системными папками, например, Root Explorer.

  1. Зайти в папку /system/ при помощи Root Explorer.
  2. Найти и открыть файл build.prop с помощью редактора.
  3. Найти строку ro.config.hw_shownavisettings=false и изменить значение false на true .
  4. Сохранить изменения в файле.
  5. Перезагрузить смартфон.
  6. Зайти в Настройки->Панель навигации->Свернуть панель навигации и включить возможность управления панелью.

Способ второй:

Данный способ подходит тем, у кого нет возможности или желания получать root права на своем устройстве. Из необходимого софта понадобится только SQLite Database Editor.

  1. При помощи стандартного приложения AllBackup сделать 2 резервные копии Системных настроек системы с отключенным шифрованием.
  2. Открыть при помощи ES Проводник/Root Explorer/Huawei File Manager, либо любого другого файл-менеджера, папку
    /HuaweiBackup/backupFiles/ГГГГ-ММ-ДД_ЧЧ-ММ-СС/ на карте памяти, где ГГГГ-ММ-ДД_ЧЧ-ММ-СС соответствует дате и времени создания резервной копии.
  3. Открыть файл system setting.db при помощи SQLite Database Editor .
  4. В таблице system найти переменную hide_virtual_key и изменить ее значение с 0 на 1 .
  5. Зайти в утилиту AllBackup и выполнить восстановление данных с SD-карты из отредактированного бэкапа.
  6. Перезагрузить смартфон.

При сбросе настроек на заводские, а также после обновления прошивки данные манипуляции придется выполнять повторно.


Возможность скрыть панель впервые была использована в Android 4.4 «KitKat». Но не все приложения или игры, особенно ранние, могут работать без панели управления. Поэтому вашему вниманию предлагается пара способов решения проблемы посредством сторонних приложений.

Убираем панель первым способом

Он реализован с помощью программы GMD Full Screen Immersive Mode, достаточно прост, не требует Root-прав, но работает на Android версии «KitKat» и не всегда стабильно функционирует.

Алгоритм действий:

  1. Скачиваем и устанавливаем приложение;
  2. Запускаем программу, находим раздел «General», помечаем галочками пункты «Start on Boot» и «Notification», для автозапуска программы с ОС и отображения кнопок приложения в панели уведомлений соответственно;
  3. При запуске приложение отобразится в панели уведомлений и позволит выбрать режимы отображения или скрытия панелей экрана.

К недостаткам способа стоит отнести отсутствие экранной клавиатуры в полноэкранном режиме и не всегда корректную работу с некоторыми программами, но в основном приложение работает довольно хорошо.

Второй способ как убрать Android-панель

Для реализации этого способа потребуется программка Ultimate Dynamic Navbar, инструмент Xposed Framework и открытый Root доступ к программному обеспечению планшета. Он является наиболее удобным, надежным и обладает высокой гибкостью настроек.

Алгоритм действий:

  1. Необходимо скачать и установить Ultimate Dynamic Navbar;
  2. После ее запуска в настройках переключатель режима ставим в положение «Вкл» и отмечаем пункт «Автозапуск при включении», прочие настройки можно установить позже;
  3. Результатом работы программы станет появление «плавающей» панели;
  4. Старая панель осталась на месте, поэтому для ее скрытия скачиваем и устанавливаем Xposed installer;
  5. После запуска жмем на поле «Установить/обновить», перезапускаем программу, после чего приложение активируется и станет видна его версия;
  6. В разделе «Модули» программы подключаем Ultimate Dynamic Navbar, отметив его галочкой, перезагружаем смартфон – старая панель должна исчезнуть.

Остается только пожелать вам, дорогие пользователи, приятного времяпровождения в сети или за игрой, положительных эмоций от полного экрана и удовольствия от удачно реализованной затеи.