Как выключить экранные кнопки на android. Как включить наэкранные кнопки, если физические больше не работают. Способ номер два. Экранные клавиши

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

Чтобы все получилось, необходимо получить Root права. Доступ администратора к недрам системных файлов иногда заполучить сложно. Но с появлением приложений, получающих необходимый доступ за вас, больше не нужно читать многостраничные инструкции. Просто установите программу Kingo Root на ваш компьютер и подключите телефон. Единственное, что нужно сделать, пока проходит установка программы - в настройках телефона, разделе «безопасность» разрешить «Отладку по USB». Вот и все. Нажав большую кнопку Root в интерфейсе Kingo Root , активируем права администратора.

Шаг второй выглядит немного сложнее. Вам потребуется скачать из Google Play (или чуточку…альтернативных источников) программу Root Explorer. Установите ее на ваш смартфон. Запустите это приложение, найдите каталог System, а в нем - build.prop. Если такого файла в системном каталоге не видно, не беда. В верхнем углу программы есть троеточие - тапните по нему, чтобы открыть подменю. В настройках программы отметьте пункт «Показывать скрытые файлы». Пропажа тут же обнаружится.

В левом углу Root Explorer находится еще один нужный нам пункт - r/w. Коснитесь его один раз и подтвердите свой выбор. Это действие активирует возможность редактировать системные файлы. Теперь коснитесь build.prop и удерживайте палец на нем. Верхнее меню изменится и из выпадающего списка (во все том же троеточии) вы найдете подпункт «открыть в текстовом редакторе».

Пролистайте открытый файл до самого низа - все эти длинные списки настроек пока не нужны. В самом низу добавьте строку qemu.hw.mainkeys=0. Сохраните файл и перезагрузите телефон.

Готово, в самом низу экрана появились три наэкранные кнопки - аналогичные тем, что вы можете увидеть на экране любого планшета. А после ремонта физических кнопок виртуальные вполне получится скрыть обратно, заменив строку qemu.hw.mainkeys=0 на qemu.hw.mainkeys=1 и снова перезагрузив аппарат.

Великим проклятием стали эти кнопки для всех Android-устройств. Всё началось с планшетов в Android 3.0 Hoheycomb, а с выходом Android 4.0 Ice Cream Sandwich перекинулось и на смартфоны. Устройство можно сделать полностью без физических кнопок, но при этом придется пожертвовать огромной полосой внизу экрана, чтобы расположить кнопки наэкранные...
На самом деле не всё так мрачно. Да, эта полоса не скрывается почти никогда, но в то же время в большинстве случаев не доставляет неудобств. Но для тех немногочисленных случаев, когда она мешает, и хочется, чтобы экран был доступен приложению целиком и полностью, от нее можно избавиться. Все программы для этой функции требуют root-права и не на всех устройствах, не на всех прошивках работают идеально. Но разве это нас останавливало?

Как управлять устройством?

Действительно, если избавиться от полосы с кнопками, то девайс становится полностью неуправляемым. Даже нельзя вернуться на рабочий стол. Хорошо если программа, которая скрывает кнопки, может предоставлять им альтернативу, но большинство этого не делают. Полосу спрятали, а дальше крутитесь как хотите...
Тут нам приходит на помощь программка Button Savior, которая выводит небольшую полосу из наэкранных кнопок сбоку экрана при нажатии на специальную кнопочку или после свайпа от края экрана. Подробно на ней останавливаться не будем. Скажу только, что она тоже требует root-права, имеет множество настроек, поддерживает темы, а платная версия позволяет по-своему компоновать и переназначать кнопки. Программа полезна для планшетов, даже если полосу никуда не прятать - управлять устройством становится намного проще.

Убираем полоску с кнопками!

Первым делом рассмотрим программу ful!screen. Примечательна она не только тем, что скрывает кнопки там, где другие программы не справляются, а еще и тем, что предоставляет этим кнопкам удобную альтернативу - две полупрозрачные кнопки по бокам экрана по умолчанию назначены на действия «назад» и «домой», но всё можно перенастроить по-своему. Поддерживается обычное нажатие, долгое нажатие и свайп - по три действия на каждую кнопку. Если какая-нибудь программа просто не может жить без этой надоедливой полосы, можно настроить, чтобы ful!screen не скрывал ее при работе этой программы. И что очень важно, несмотря на то, что программа скрывает шторку, есть возможность назначить действие на её отображение...
В общем, ful!screen - лучшая программа для скрытия наэкранных кнопок. Но возможно, что некоторая перегруженность и обилие настроек отпугнут часть пользователей. В этом случае можно воспользоваться программами попроще. Я использовал Tablet Bar Hide и No System Bar - однокнопочные программы, которые могут скрывать и показывать System Bar (полоса с кнопками и полоса с оповещениями). Первая программа способна мониторить моменты, когда полоса внезапно всплыла, и прятать ее снова (кнопки Start и Stop). Чего-то особенного про эти программы не скажешь - до первой перезагрузки полосы с кнопками не будет. Работоспособность нужно проверять отдельно на каждом устройстве и в каждой прошивке. Обе программы бесплатные.

Важное замечание по программам, требующим root-права

Замечание касается удаления этих программ из устройства. Перед этой процедурой нужно не забыть всё вернуть на свои места. Если полосу с кнопками скрыть, а потом удалить программу, то вы никогда их не увидите. И хорошо, если перезагрузка вернет всё на свои места. А бывает, что и полная перепрошивка не помогает. Во многих программах этот момент особенно подчеркивается в настройках, но всё равно нужно быть внимательными.

Во- первых, пожалуйста, думать долго и трудно, если вы действительно хотите отключить Home кнопку или любую другую кнопку для этого вещества (например, Back кнопки), это не то, что должно быть сделано (по крайней мере, в большинстве случаев, это Плохой дизайн). Я могу говорить только для себя, но если я скачал приложение, которое не позволяет мне делать что-то вроде нажатия кнопки ОС, следующая вещь, которую я делаю, это удалить это приложение и оставить очень плохой обзор. Я также считаю, что ваше приложение не будет отображаться в App Store.

Теперь…

Обратите внимание, что MX Player запрашивает разрешение на использование поверх других приложений:
Поскольку вы не можете переопределить кнопку « Home на устройстве Android (по крайней мере, в последних версиях ОС). MX Player рисует себя поверх вашей пусковой установки, когда вы «блокируете» приложение и нажимаете кнопку « Home .
Чтобы увидеть пример, который является более простым и понятным, вы можете увидеть приложение Facebook Messenger .

Поскольку меня попросили предоставить дополнительную информацию о MX Player Status Bar и Navigation Bar «overriding», я редактирую свой ответ, чтобы включить эти темы.

Прежде всего, MX Player использует Immersive Full-Screen Mode (DevBytes Video) на KitKat .
Android 4.4 (API уровня 19) представляет новый флаг SYSTEM_UI_FLAG_IMMERSIVE для setSystemUiVisibility (), который позволяет вашему приложению по-настоящему «полноэкранный». Этот флаг в сочетании с флажками SYSTEM_UI_FLAG_HIDE_NAVIGATION и SYSTEM_UI_FLAG_FULLSCREEN скрывает навигационные и статусные полосы и позволяет вашему приложению захватывать все события касания на экране.

Когда включен режим полноэкранного полноэкранного режима, ваша активность продолжает получать все события касания. Пользователь может отображать системные бары с внутренним салфетком вдоль области, где обычно появляются панели системы. Это очищает флаг SYSTEM_UI_FLAG_HIDE_NAVIGATION (и флаг SYSTEM_UI_FLAG_FULLSCREEN , если применяется), поэтому панели системы становятся видимыми. Это также запускает ваш View.OnSystemUiVisibilityChangeListener , если он установлен. Однако, если вы хотите, чтобы системные бары автоматически спрятались снова через несколько секунд, вы можете вместо этого использовать флаг SYSTEM_UI_FLAG_IMMERSIVE_STICKY . Обратите внимание, что «липкая» версия флага не вызывает каких-либо прослушивателей, поскольку системные бары, временно показанные в этом режиме, находятся в переходном состоянии.

Второе: скрытие строки состояния
В-третьих: скрытие панели навигации
Обратите внимание, что хотя использование полноэкранного режима только для KitKat , скрытие строки Status Bar и Navigation Bar не только для KitKat .

Мне нечего сказать о 2-м и 3-м, у вас есть идея, которую я считаю, она быстро читается в любом случае. Просто убедитесь, что вы уделяете пристальное внимание View.OnSystemUiVisibilityChangeListener .

Я добавил Gist, который объясняет, что я имел в виду, он не является полным и требует некоторой фиксации, но вы получите эту идею. https://gist.github.com/Epsiloni/8303531

Удачи вам в этом, и получайте удовольствие!

Я последовал за ответом shaobin0604, и мне наконец удалось заблокировать кнопку HOME, добавив:

AndroidManifest.xml Все, что вам нужно сделать, это скопировать HomeKeyLocker.java из библиотеки shaobin"s в ваш проект и реализовать его, как в примере с шаобином. BTW: Моя версия Android AVD – Android 4.0.3 .

Вы можете использовать Android-HomeKey-Locker для отключения HOME KEY и других системных клавиш (таких как BACK KEY и MENU KEY)

Надеюсь, это поможет вам в вашем заявлении. Благодарю.

Вы можете отключить кнопку «home and recents» Android 5.0, используя упомянутую здесь функцию закрепления экрана:

Android 5.0 представляет новый API-интерфейс, который позволяет временно запретить пользователям покидать вашу задачу или прерваться уведомлениями. Это можно использовать, например, если вы разрабатываете приложение для образования, чтобы поддерживать высокие требования к оценке ставок на Android или одноцелевое приложение или приложение для киоска. Когда ваше приложение активирует привязку экрана, пользователи не могут видеть уведомления, доступ к другим приложениям или вернуться на главный экран, пока ваше приложение не выйдет из режима.

Вы можете заблокировать устройство до киоска. Панель навигации не скрыта, но кнопки home и recents можно удалить или отключить в зависимости от того, как вы активируете режим. Я написал некоторую информацию после тестирования этой функции здесь.

Просто догадаться, но я думаю, что с помощью разрешения SYSTEM_ALERT_WINDOW (отображается как «Нарисовать поверх других приложений», см. Здесь), это может быть возможно: отобразить ваше приложение как полноэкранное окно с системным предупреждением. Таким образом, он скроет любые другие приложения, даже на рабочем столе, поэтому, если вы нажмете Home, это не будет действительно отключено, просто без видимого эффекта.

У MX Player это разрешение объявлено, и Facebook Messenger имеет его для отображения « головок чата » во всем, поэтому это может быть решение.

Обновление (добавлено из моих комментариев): Затем используйте SYSTEM_UI_FLAG_HIDE_NAVIGATION в сочетании с захватом событий касания / использованием OnSystemUiVisibilityChangeListener для переопределения поведения по умолчанию (навигационная панель появляется при касании). Кроме того, так как вы сказали, что выходный иммерсивный жест не работает, вы можете попробовать также установить SYSTEM_UI_FLAG_IMMERSIVE_STICKY (с SYSTEM_UI_FLAG_FULLSCREEN и SYSTEM_UI_FLAG_HIDE_NAVIGATION).

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

Здесь вы можете увидеть больше деталей: кнопка «Отключить домой» в Android 4.0+

Наконец, кнопка «Назад» может быть отключена, как вы можете видеть в этом другом вопросе: Отключить кнопку «Назад» в android

Я тоже искал это на некоторое время и, наконец, смог сделать это по мере необходимости, т. Е. Панель навигации недоступна, строка состояния недоступна, даже если вы долго нажимаете кнопку питания, ни меню питания, ни кнопки навигации не отображаются. Благодаря @Assaf Gamliel, его ответ привел меня на правильный путь. Я последовал этому руководству с небольшими изменениями. При указании типа я указал WindowManager.LayoutParams.TYPE_SYSTEM_ERROR вместо WindowManager.LayoutParams.TYPE_PHONE , иначе наш «оверлей» не скроет системные бары. Вы можете играть с флагами, высотой, шириной и т. Д., Чтобы она вела себя так, как вы этого хотите.

Если вы нацелились на Android 5.0 и выше. Вы можете использовать:

Activity.startLockTask()

Я не знаю, как diable кнопку дома. До тех пор, пока я узнал, что получил следующую ссылку.

Постоянная ключевого кода: главный ключ. Этот ключ обрабатывается платформой и никогда не доставляется в приложения.

Но, мы можем diable кнопку назад. Надеюсь, что следующий код поможет вам.

@Override public void onBackPressed() { //return nothing return; }

Сначала создайте метод:

Public void hideNavigationBar() { final View decorView = this.getWindow().getDecorView(); final int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_STABLE; Timer timer = new Timer(); TimerTask task = new TimerTask() { @Override public void run() { YourActivityName.this.runOnUiThread(new Runnable() { @Override public void run() { decorView.setSystemUiVisibility(uiOptions); } }); } }; timer.scheduleAtFixedRate(task, 1, 2); }

Затем вы вызываете его по onCreate() вашей активности. Вызовите его снова по onResume() . Затем вы можете добавить еще один способ в своей деятельности:

@Override public void onWindowFocusChanged(boolean hasFocus) { super.onWindowFocusChanged(hasFocus); hideNavigationBar(); }

Это будет так. Помните, что он заблокирует экран, пока в следующий раз пользователь не коснется экрана, в классе Timer вы можете изменить задержку, и это позволит вам изменить вещи для этого экземпляра. Затем он снова заблокирует экран.

Вы не можете отключить кнопку Home от ICS onwords, но можете отключить другие кнопки следующим образом

@Override public boolean dispatchKeyEvent(KeyEvent keyEvent){ return true; }

Post ICS, т. Е. Android 4+, переопределение HomeButton было удалено по соображениям безопасности, чтобы позволить пользователю выйти в случае, если приложение окажется вредоносной программой.

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

Честно говоря, невозможно отключить домашнюю кнопку, по крайней мере, на новых уровнях api, начиная с 4.0. Это также не рекомендуется делать. Однако вы можете заблокировать кнопку «Назад», переопределив

Public void onBackPressed() { // do not call super onBackPressed. }

Чтобы переопределить кнопку «домой», вы можете использовать таймер, например, и после каждого раза проверять, является ли главный экран вашим экраном или нет, или ваш пакет находится сверху или нет, (я уверен, что вы получите ссылки на него), И отобразите свою активность, используя флаг single_top.

Таким образом, даже если нажата кнопка «домой», вы сможете перенести свое приложение вверх.

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

Счастливое кодирование.

PS: Невозможно перехватить исходное событие, когда нажата кнопка «Домой».

Вы можете использовать методы attach, а также методы keyguard, но не для уровней api начиная с 4.0 и выше.

Использование вращения вызывает исключение. Поэтому я исправил свою активность, используя это:

HomeKeyLocker locker; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_splash); locker = new HomeKeyLocker(); locker.lock(this); } @Override protected void onSaveInstanceState(Bundle savedInstanceState) { super.onSaveInstanceState(savedInstanceState); locker.unlock(); } @Override public void onConfigurationChanged(Configuration config) { super.onConfigurationChanged(config); locker.lock(this); }

Вам нужно будет использовать предложение @ Lê Quang Duy.

Извините за ответ через 2-3 года. Но вы можете скрыть активность всех кнопок системы. Просто проверьте мои ответы Как отключить кнопку виртуального дома в любой деятельности? ,

.
Аппаратные средства сотовой связи (сейчас они называются смартфонами) очень непохожи на сотовые телефоны совсем недавнего прошлого: теперь на лицевой панели вообще отсутствуют привычные кнопки.

Разработчики телефонов стремятся увеличить размер дисплея и теперь вместо физических кнопок появились виртуальные «нарисованные» кнопки на сенсорном экране мобильного устройства. Поэтому управление телефоном сейчас осуществляется касанием пальца по экрану.

Многозадачность современных смартфонов с годами растет и теперь, как правило, их владельцы одновременно используют сразу несколько открытых приложений. Поэтому для удобства управления этими устройствами в самом низу экрана расположена Панель навигации с тремя виртуальными кнопками (чаще всего это: «Назад», «Домой» и «Меню»).
Но и они занимают часть экранного пространства.

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

А как спрятать Панель навигации с экрана на смартфоне HUAWEI (honor)?

Для этого в Настройках смартфона нужно сделать следующее:

1. Войдите в « » смартфона.

На первой странице Настроек смартфона в самом низу экрана найдите пункт «Система » и нажмите на него.

2. На следующей странице выберите пункт «Системная навигация ».

3. На следующей странице выберите пункт «Панель навигации Настройки ».

4. На следующей странице выберите пункт «Панель навигации» и нажмите на включатель.

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

Теперь на Панели навигации слева появилась четвертая кнопочка, нажав на которую Панель навигации уходит с экрана, освобождая место.

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

Приветствую, есть у меня дешевенький смартфончик Fly IQ434. Однажды он утонул, но вопреки моим ожиданиям, работать не перестал. Как работал, так и работает, за исключением кнопки назад. Она то работает с двадцатого нажатия, то клинит и нажимается сама по себе, короче доставляет массу неудобств.

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

Как выяснилось сделать задуманное – очень просто, но есть требование – ваше Android устройство должно быть с root доступом.

Сначала нужно поставить какой-нибудь файловый менеджер, которому могут быть предоставлены права суперпользователя (root). Я предпочитаю пользоваться es проводником , качаем его с Play Market,

Запускаем и в меню слева включаем выключатель root проводник.

В зависимости от того какой root менеджер у вас установлен, выскочит предупреждение/подтверждение передачи root прав приложению. Подтверждаем.

После этого нужно перейти в папку /system/usr/keylayout

На всякий случай сделайте бэкап этой папки.

В этой папке будем несколько файлов с расширением.kl, один из них нужно отредактировать. Какой именно – зависит от вашего android устройства. В моем случае это Geneic.kl.

Отрываем его в es редакторе

и находим строку, где написано BACK WAKE_DROPED и закомментируем ее (нужно в начале строки добавить символ #). Не сложно догадаться, что если вам нужно отключить другую кнопку, например, увеличение громкости, то искать нужно строку где есть VOLUME_UP.

Перезагружаем устройство. После включения кнопка не должна будет работать. Если же она продолжает работать, то вам нужно будет отредактировать другой файл, в той же папке. Какой именно вам может подсказать google, а можете и просто перебором определить, комментируя нужную строчку во всех файлах, пока не наткнетесь на нужный.

Кстати на Samsung Galaxy Tab 2 с прошивкой CyanogenMod 11 за аппаратные кнопки отвечает этот же файл – Generic.kl.

После того как кнопка отключена, нужно придумать ей замену. Поставим программную кнопку. Программ для эмуляции кнопок в Play Market предостаточно, но мне приглянулась Button Savior .

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

Первая касается темы, по умолчанию кнопки плохо видно:

Что бы это исправить нужно выбрать другую тему, для этого во вкладке look and feel жмем по themes и выбираем другую тему. Мне понравилась Froyo. Вот как она выглядит:

Вторая настройка – что бы панель с кнопками исчезала при прикосновении за пределами панели. Во вкладке Advanced нужно поставит галку на против Hide On Outside Touch.

И да, все что вы делаете, вы делаете на свой страх и риск, за испорченные девайсы я ответственности не несу.



gastroguru © 2017