我知道为用户控制HOME按钮是错误的建议。但我正在开发一个用于教育目的的android锁定应用程序。我正在浏览该网站并在禁用主页按钮时遇到此link。
@override
public void onAttachedToWindow()
{
this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
super.onAttachedToWindow();
}
目前我正在使用上面的代码来禁用我的主页按钮,但我确实注意到即使我在我的onCreate中有这个
getWindow.setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
我无法删除我的通知栏删除。 请指教。
答案 0 :(得分:9)
为您的活动使用不同的主题。在你的Manifest.xml中,将你的活动的主题属性设置为android:theme =“@ android:style / Theme.NoTitleBar.Fullscreen”
答案 1 :(得分:6)
你可以禁用电源按钮! 你可以试试这个: 项目:DisableAllButton
禁用搜索,返回键: 在“DisableAllButton.java”中
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
return false;
}
禁用主页键: 在“DisableAllKey.java”中
@Override
public void onAttachedToWindow() {
// TODO Auto-generated method stub
this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
super.onAttachedToWindow();
}
禁用Powerkey: 在“DisableAllKey.java”中
KeyguardManager keyguardManager = (KeyguardManager) getSystemService(Activity.KEYGUARD_SERVICE);
KeyguardManager.KeyguardLock lock = keyguardManager.newKeyguardLock(KEYGUARD_SERVICE);
lock.disableKeyguard();
<uses-permission android:name="android.permission.DISABLE_KEYGUARD"></uses-permission>
并设置全屏 在AndroidManifest中
<application android:icon="@drawable/icon" android:label="@string/app_name"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
完成! :d
答案 2 :(得分:1)
检查Android源代码,View.java
public static final int STATUS_BAR_DISABLE_HOME = 0x00200000;
STATUS_BAR_DISABLE_HOME标志隐藏在标准API中。
我们可以使用0x00200000来设置系统ui可见性,如下:
View decorView = getWindow().getDecorView();
decorView.setSystemUiVisibility(decorView.getSystemUiVisibility()|0x00200000);
但你应该添加
<uses-permission android:name="android.permission.STATUS_BAR" />
首先,此权限仅授予系统应用