我做了一个小Android应用程序来处理Activities,我面临一个奇怪的问题。
为了确定是否可以移至上一个Activity,我使用以下代码:
ActivityManager am = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
List<ActivityManager.RunningTaskInfo> taskList = am.getRunningTasks(3);
return taskList.get(0).numActivities;
基本上,它返回一个Integer状态总活动onStop加一(当前Activity)。
启动时,我先运行 aSplashscreen以显示非常简单的信息,然后转到 login Activity。
为了确保不Activity stack等于2,我使用:
Intent intent = new Intent(ASplashscreenActivity.this, activityToLaunch);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
finish();
此时,我希望在堆栈中获得1 个活动,但它给出了2。
为什么 ?
谢谢你的帮助。