如何使用主页按钮终止应用程序

时间:2014-02-20 07:28:07

标签: android android-activity kill

当用户在应用程序中间按下主页按钮时,我想要终止我的应用程序。

还有一个人找我使用onUserLeaveHint()方法。在我的appilcation中我应该在哪里使用这个方法?

3 个答案:

答案 0 :(得分:2)

在较旧的Android版本上,这是有效的。但Android更改了这一点,因为“主页按钮应该保留主页按钮”,并且他们不希望任何人覆盖主页按钮。由于这个原因,你的代码将无法正常工作。

也许你可以实现这个:

@Override
protected void onStop() {
    super.onStop();
    finish();
}

但我打赌你不想这样做,因为每当你的应用程序转到后台时调用onStop()(例如当你的应用程序在前台时有来电)那将{ {1}}目前 的当前finish

你可能想看看

How to finish an android application?

答案 1 :(得分:2)

您可以尝试覆盖onPause()按钮,如下所示:

@Override
public void onPause() {
    super.onPause();
    this.finish();
}

请注意,Android是专门设计用来阻止主页按钮查杀该应用。

答案 2 :(得分:1)

“主页”按钮是一个非常危险的按钮,因此,Android不会让您以与执行“返回”按钮相同的方式覆盖其行为。 因此,如果没有用户确认,您无法永久覆盖主页按钮(这是出于安全问题) 所以即使使用:

@Override
public boolean onKeyDown(int keyCode, KeyEvent event)
{
    if(keyCode == KeyEvent.KEYCODE_HOME)
    {
        Log.d("Test", "Home button pressed!");
    }
    return super.onKeyDown(keyCode, event);
}

它不起作用,因为KeyEvent.KEYCODE_HOME总是由系统处理,永远不会发送到应用程序。