我正在使用以下方法禁用 HomeKey 点击事件,但在点击主页键后,我的应用将被关闭。我想,只要用户点击主页键,我的应用就不会关闭。
@Override
protected void onUserLeaveHint() {
super.onUserLeaveHint();
moveTaskToBack(false);
}
答案 0 :(得分:1)
由于Android 4没有有效的方法来停用主页 按钮。这就是我们需要另一个小黑客的原因。一般来说 我们的想法是检测新应用程序何时处于前台和 立即重启您的活动。
检查此解决方法:http://www.andreas-schrade.de/2015/02/16/android-tutorial-how-to-create-a-kiosk-mode-in-android/
答案 1 :(得分:0)
在您的活动
中覆盖以下方法@Override
public void onAttachedToWindow() {
super.onAttachedToWindow();
this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
}
现在处理这样的关键事件,
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(keyCode == KeyEvent.KEYCODE_HOME)
{
Log.i("Home Button","Clicked");
}
if(keyCode==KeyEvent.KEYCODE_BACK)
{
finish();
}
return false;
}
答案 2 :(得分:0)
将他加入您的活动代码中。它会拦截后退按钮点击
@Override
public void onBackPressed() {
}
答案 3 :(得分:0)
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_HOME)) {
Toast.makeText(this, "You pressed the home button!", Toast.LENGTH_LONG).show();
return true;
}
return super.onKeyDown(keyCode, event);
}