http://developer.android.com/shareables/training/ActivityLifecycle.zip
Google 教程的这个DEMO中,创建activityB和activityC几次,就要销毁几次,但是如果在创建activityB和activityC几次后再创建activityA,则会把前面创建的几次activity全部销毁,这是为什么呢?
因为activity A 的启动模式是singleTask:
<activity android:name=".ActivityA"
android:launchMode="singleTask">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
singleTask:如果activity栈中在activity A上还有其他activity,那么就会把其他在activity A上面的activity出栈,把activity A显示到屏幕前。