Activity的启动模式可分为两类:显性启动和隐性启动。
一、显性启动(四大启动模式):
0.设置启动模式:
1.standard(默认的启动模式):
standard是活动默认的启动模式 ,每当启动一个新的Activity,它就会在任务栈中入栈,并处于栈顶的位置。对于使用standard模式的活动,系统不会在乎这个Activity是否已经在任务栈中存在,每次启动都会创建该活动的一个新的Activity实例。
因此该启动模式会消耗很多性能和资源。
2.singleTop
当使用singleTop模式,在启动活动时如果发现任务栈的栈顶已经是该Activity,则认为可以直接使用它,不会再创建新的Activity实例。
3.singleTask(实际中经常用到该启动模式)
当使用singleTask模式,每次启动Activity时系统首先会在任务栈中检查是否存在该Activity的实例,如果发现已经存在,则直接使用,并把在这个Activity之上的所有Activity统统出栈,如果没有发现就会创建一个新的Activity实例。
1.singleInstance
当使用singleInstance模式,会启用一个新的任务栈来管理这个Activity,有一个单独的任务栈来管理这个Activity。
这种启动模式是最消耗性能和资源的,但是它能作为和其他程序的共享资源。