一、android任务栈
概述:Android中的任务栈其实就是Activity的集合,在Android中退出程序的时候必须把任务栈中的所有Activity清除出栈,此时才能安全的完全的退出程序,
任务栈销毁了才是处于数据最安全的状态,如果不去删除,则需要合理的保存这个任务栈,这样任务栈就保留了每个Activity的状态,也会保存Activity的信息,
任务栈也不一定是唯一的,一个Activity当中也不止一个任务栈,某些情况下,Activity也可独享一个任务栈(SingleInstance)。
二、Activity启动模式
1.Standrd(标准启动模式):该模式每次启动Activity都会重新创建一个Activity的实例,将它加入到任务栈当中,不会去考虑Task当中是否存在过这个实例了,
这样每创建一个实例都会走相应的生命周期方法。
2.SingleTop(栈顶复用模式):每次启动Activity都会判断是否存在栈顶,在栈顶就复用,不在栈顶依然会重新创建。
3.SingleTask(栈内复用模式):每次启动Activity的时候,会检测整个任务栈当中是否存在该Activity,存在就置于栈顶并把这个Activity之上的所有Activity从任务栈销毁。
4.SingleInstance:以该模式启动的Activity,会单独存在一个任务栈中,且只有它一个实例,独享一个任务栈。(该模式很少用)