0

処理する小さなAndroidアプリケーションを作成しましたがActivities、奇妙な問題に直面しています。

前の に移動できるかどうかを判断するにはActivity、次のコードを使用します。

ActivityManager am = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
List<ActivityManager.RunningTaskInfo> taskList = am.getRunningTasks(3);
return taskList.get(0).numActivities; 

基本的には、Integerアクティビティの合計に 1 を加えた状態の を返しますonStop(現在のActivity)。

起動時に、最初に a を実行しSplashscreenて非常に単純な情報を表示し、次に login に移動しますActivity

確実に2Activity stackに等しくならないようにするために、次を使用します。

Intent intent = new Intent(ASplashscreenActivity.this, activityToLaunch);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
finish();

この時点で、スタック内のアクティビティは1になると予想していますが、結果は2です。

どうして ?

ご協力いただきありがとうございます。

4

0 に答える 0