Intent.FLAG_ACTIVITY_CLEAR_TOP没有关闭android中堆栈中的所有活动

Vip*_*pin 2 android

我想在进入新活动之前关闭堆栈中的所有活动.

这是我的代码

Intent i=new Intent(first.this,secondsct.class);
                        i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                        //i.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
                        //i.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
                        //i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                        startActivity(i);
                        finish();
Run Code Online (Sandbox Code Playgroud)

但这不起作用.我之前尝试过这个但现在没有.我不知道为什么.任何人都可以知道可能是什么原因.

Bha*_*han 7

我试过Intent.FLAG_ACTIVITY_CLEAR_TOP但是没有得到适当的解决方案,所以最终这对我有所帮助

Intent intent = new Intent(getApplicationContext(), LoginActivity.class);
ComponentName cn = intent.getComponent();
Intent mainIntent = IntentCompat.makeRestartActivityTask(cn);
startActivity(mainIntent);
Run Code Online (Sandbox Code Playgroud)

这将清除所有堆栈并仅运行LoginActivity