在Android Froyo中禁用主页按钮并使应用程序全屏无标题(无状态栏,无标题)

时间:2011-12-07 20:38:42

标签: android

首先,是的,我知道它不是操作系统禁用主页按钮的预期行为,但我创建的应用程序仅用于在封闭组织内部使用的设备集合而不是公共消费。其次,我知道到处都有很多类似的问题和不稳定的答案,但到目前为止还没有提出任何解决方案,所以我觉得谨慎(虽然有些自我服务)再把问题放在那里了。

我正在尝试简单地创建一个也是远程网络锁定屏幕的启动画面。当远程告知设备这样做时,它将结束活动,用户可以开始使用该设备。

在清单中设置:

<activity android:name=".ActivityOne" android:label="@string/app_name" android:theme="@android:style/Theme.NoTitleBar.Fullscreen">

在活动中:

@Override
public void onAttachedToWindow()
{   
    this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);     
    super.onAttachedToWindow();  
}

组合这些停止主页按钮,但似乎允许状态栏保持可见。有几个显而易见的原因导致我不希望状态栏可见,但最重要的是,一旦用户“拉下”状态栏以查看通知区域,主页按钮再次可用,整个练习就被规避了。

我主要是通过代码寻找答案,宽恕或黑客攻击。如果没有可以对上面的代码集进行直接修改,我当然会欣赏并接受一个正确描述(最好是代码示例)任何实现相同目标的替代逻辑的答案。替代方案可以是修改一些系统文件或其他较低级别的技术。

最后请注意,我们知道所有设备都有SU / Root访问权限。

2 个答案:

答案 0 :(得分:2)

在onCreate方法上试试。

requestWindowFeature(Window.FEATURE_NO_TITLE);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);

答案 1 :(得分:0)

我认为this site有你想要的东西。 您可以通过代码或使用Manifest删除状态栏。无论哪种方式,您都需要在所有活动中完成。