Скрыть панель навигации навсегда - PullRequest
0 голосов
/ 19 сентября 2018

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

  View decorView = getWindow().getDecorView();
        int uiOptions = 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_IMMERSIVE_STICKY;
        decorView.setSystemUiVisibility(uiOptions);

Я не могу прочитать в материале Google.скрыть навсегда это правда https://developer.android.com/training/system-ui/navigation нужно предложить решения

1 Ответ

0 голосов
/ 20 сентября 2018

Вы можете сделать это вручную с помощью ADB.
Чтобы перевести его в режим погружения навсегда:

adb shell settings put global policy_control immersive.navigation=*  

Чтобы вернуть его: adb shell settings put global policy_control null*

Чтобы «удалить» его,Вы можете отсканировать его за пределы экрана:

adb shell wm overscan 0,0,0,-168  

Возможно, придется изменить это число, но это работает для меня.
Чтобы вернуть его: adb shell wm 0,0,0,0

Если вам нужно сделать это в вашем приложении, вы можете запросить root-доступ и выполнить команды в приложении:

val command = "settings put global policy_control immersive.navigation=*"
val runtime = Runtime.getRuntime()
runtime.exec("su")
runtime.exec(command.split(" "))
...