如何检测用户何时退出我的应用?

时间:2014-05-31 17:06:48

标签: java android exit

我正在编写一个Android应用程序,我想在退出应用程序时从数组中删除用户。我尝试使用onStop()方法,但它并不是我想要的,因为每当活动发生变化时,用户都会从数组中删除。

当用户从“最近的活动”中删除应用程序时,我需要一种方法来执行方法。 有关此事的任何建议吗?

2 个答案:

答案 0 :(得分:0)

您可以跟踪后退键,以便当用户按下它以退出应用程序时,您可以执行所需操作。

 @Override
 public boolean onKeyDown(int keyCode, KeyEvent event) {
       if ((keyCode == KeyEvent.KEYCODE_BACK)) {
        //YOUR CODE HERE
    finish(); //<<<------MUST BE USED SO THAT THE BUTTON WILL ACTUALLY FINISH THE APP
        }
  return super.onKeyDown(keyCode, event);
   }

否则,您可以尝试使用onPause()方法而不是onStop。 Android不建议使用onStop来保存数据等。我认为后退键是最好的

答案 1 :(得分:0)

  

我需要一种在用户删除应用程序时执行方法的方法   来自“最近的活动”

当您从列表中滑动某个应用时,它实际上只会停止所有应用的服务(而不是应用本身!)。您可能需要考虑仅为此目的创建服务,以便在服务被终止时,您将通过onTaskRemoved收到通知。

您可以阅读更多here