Android onBackPressed()但活动已完成(),然后是onCreate(),onResume()。无法退出应用程序

Android onBackPressed()但活动已完成(),然后是onCreate(),onResume()。无法退出应用程序,android,Android,安卓2.3.6 复制的步骤。 转到活动。 重新启动手机。 单击后退按钮。 什么也没发生。实际上再次创建活动,然后调用resume,所以无法退出应用程序。它一直开着。 这是什么原因造成的。我已选择该应用程序作为默认应用程序启动器,因此可能与此有关 问题是这怎么可能不结束活动?我在做背压,我也在完成。我在onResume中有日志语句,所以我认为它不会被重新启动。重新启动手机的原因是什么。不然就行了 @Override public void onBackPressed() { s

安卓2.3.6 复制的步骤。 转到活动。 重新启动手机。 单击后退按钮。 什么也没发生。实际上再次创建活动,然后调用resume,所以无法退出应用程序。它一直开着。 这是什么原因造成的。我已选择该应用程序作为默认应用程序启动器,因此可能与此有关

问题是这怎么可能不结束活动?我在做背压,我也在完成。我在onResume中有日志语句,所以我认为它不会被重新启动。重新启动手机的原因是什么。不然就行了

 @Override
 public void onBackPressed() {
        super.onBackPressed();
        finish();


    }
}
更新:发生的是立即重新创建活动。一次创建,一次恢复。因此,活动已停止,但由于某种原因,它不会离开。以下是清单中的活动意图筛选器:

       <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.HOME" />
        </intent-filter>

有什么东西让我无法退出应用程序吗?

试试下面的代码,希望它能帮助你

ActivityCompat.finishAffinity(Youractivity.this);
finish();

请尝试下面的代码,希望它能为你工作

/**
     * This method is use to handle back key event
     */
    public boolean onKeyDown(int keyCode, KeyEvent event)
    {
        if (keyCode == KeyEvent.KEYCODE_BACK)
        {
            finish();
            return true;
        }
        return super.onKeyDown(keyCode, event);
    }

你能把你的活动代码发给我吗。因为根据你的问题,它可以通过我发送给你的代码来解决,因为我已经更新了答案。所以它确实关闭了活动。我看到了暂停,但随后又重新创建。我看到onCreate,onResume。问题是它为什么要重新创建它。为什么不把我带回到应用程序界面呢?你能发送代码片段吗。我不明白你的问题,为什么需要编写意图过滤器?我的问题是为什么要重新创建活动?这是什么原因造成的?为什么不直接退出应用程序?在设备重新启动时发生。活动已删除,但会重新启动。请解释为什么需要这样做。我看不出为什么要重新创建活动?我已经用我的清单更新了。我确实选择了默认的应用程序。那么这可能意味着它会重新启动?我不知道。为什么通常在操作系统重新启动后?上面的代码将关闭或完成堆栈中的youracitvity。它不起作用。问题是活动被重新创建并启动。重新启动设备后会发生这种情况。每次单击“上一步”时,请在到达顶部之前查看“创建”、“恢复”。这可能会起作用,但我仍想知道为什么会重新创建我的活动。它确实停止了活动。我明白了。然后重新创建我看到的onCreate,onResume。问题是为什么?为什么在OnBackpress和finish之后会重新创建活动。