在main活动中,我有用于关闭应用程序的代码:

@Override
public void onBackPressed() {
    if (exit){
        Intent intent = new Intent(Intent.ACTION_MAIN);
        intent.addCategory(Intent.CATEGORY_HOME);
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        startActivity(intent);
        finish();

        super.onBackPressed();
    }else {
        exit = true;
        new Handler().postDelayed(new Runnable() {
            @Override
            public void run() {
                exit = false;
            }
        }, 3 * 1000);
    }

当我想关闭应用程序时,应该按2后退按钮。
问题是,当我关闭应用程序时,它从另一个活动开始,主要是从我去过的最后一个活动开始。
如何总是从主活动而不是其他活动开始活动?

最佳答案

使用这些代码行..

    @Override
 public void onBackPressed() {
     super.onBackPressed();
  if (exit){
  Intent intent = new Intent(Intent.ACTION_MAIN);
         intent.addCategory(Intent.CATEGORY_HOME);
         intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
         intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
         intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
         intent.addFlags(Intent.FLAG_ACTIVITY_TASK_ON_HOME);
        finish();
      }else {
         exit = true;
         new Handler().postDelayed(new Runnable() {
          @Override
           public void run() {
              exit = false;
          }
       }, 3 * 1000);
   }
}

07-28 01:05
查看更多