【问题标题】:How to disable bottom navigation buttons(Back,Home,recent apps/menu) in android permanently?如何永久禁用android中的底部导航按钮(返回、主页、最近的应用程序/菜单)?
【发布时间】:2017-11-08 09:44:22
【问题描述】:

我有无根设备。我想禁用BottomNavigationViewbuttons。我使用了下面的代码,但没有一个有效。

public void disablebottombars() {
    View decorView = getWindow().getDecorView();
    decorView.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_IMMERSIVE_STICKY);
}

public void FullScreencall() {
    if (Build.VERSION.SDK_INT < 19) {
        View v = this.getWindow().getDecorView();
        v.setSystemUiVisibility(View.GONE);
    } else {
        //for higher api versions.
        View decorView = getWindow().getDecorView();
        int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY;
        decorView.setSystemUiVisibility(uiOptions);
    }
}

【问题讨论】:

  • 你有什么理由不只是making the app fullscreen
  • 让应用全屏显示对我没有帮助。我想禁用默认系统 UI 的所有底部和顶部导航。
  • 你根本不能,因为禁用用户的导航和顶部栏不是你的权限。如果可以,那么您将能够在某个时候阻止用户的设备。这是恶意软件行为。
  • @GajuKrishnan 如果您拥有该设备,您可以设置一个single-purpose device。正如 Vlad 提到的,如果您的应用在其他设备上运行,您就无法做到
  • 您将在哪些设备上使用您的应用并不重要。这是不可能的,因为您可能希望将您的应用程序安装在其他用户的设备上,并且没有人可以让您拥有这样的权限,因为您说您承诺仅将其安装到您的特定设备上。您可以做的是为该特定设备创建根或创建自定义 rom,并以根/自定义 rom 交付它们。

标签: android bottomnavigationview


【解决方案1】:

您可以查看设置Single-purpose device。为此,您的应用需要设置为设备所有者,这可以通过调用adb shell dpm set-device-owner 来完成。您可以查看Google's DPC sample app 了解完整详情。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多