在面试初学者的时候经常被问到此问题,而此问题也是初学者的软肋,所以总结一下,供大家参阅。
TaskStack:
在Android中,系统用Task Stack (Back Stack)结构来存储管理启动的Activity对象,一个应用启动,系统就会为其创建一个对应的Task Stack来存储并管理该应用的Activity对象,只有最上面的任务栈的栈顶的Activity才能显示在窗口中
launchMode:
standard:标准模式,每次调用startActivity()方法就会产生一个新的实例.
singleTask:只有一个实例, 默认在当前Task中.
singleTop:如果已经有一个实例位于Activity栈的顶部时,就不产生新的实例;如果不位于栈顶,会产生一个新的实例.
singleInstance:只有一个实例, 创建时会新建一个栈, 且此栈中不能有其它对象.