Android Intent Clear Top无效

Aab*_*ani 3 android android-intent

我想点击我的HomeScreenActivity的意图并清除堆栈中存活的所有活动,下面是目标代码:

Intent intent = new Intent(activity, HomeScreenActivity.class);
    if (Build.VERSION.SDK_INT >= 11) {
        intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
    }
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
    startActivity(intent);
    finish();
Run Code Online (Sandbox Code Playgroud)

堆栈未被清除,当我按后退键时,显示所有先前的活动,这不是预期的结果.

请帮忙!

提前致谢.

Krz*_*cki 6

同时使用两个标志:

intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
Run Code Online (Sandbox Code Playgroud)

当第一个标志在当前任务(活动堆栈)中不可用或重新使用现有任务时,它会创建新活动.第二个标志清除与请求的活动相关的任务.