1、standard: 活动默认的启动模式,当创建一个新的活动,它就会在返回栈中入栈,并处于栈顶的位置。
2、singleTop: 在启动活动时如果发现返回栈的栈顶已经是该活动,则认为可以直接使用。
3、singleTask:使用singleTop模式可很好的解决重复创建栈顶活动的问题,但是如果该活动并没有处于栈顶的位置,还是可能创建多个活动实例的,那么有没有什么办法可以让某个活动在整个应用程序的上下文中只存在一个实例呢?这就要借助singleTask模式来实现了。当活动的启动模式指定为singleTask,每次启动该活动时系统首先会在返回栈中检查是否存在该活动的实例,如果发现已经存在则直接使用该实例,并把在这个活动之上的所有活动统统出栈,如果没有发现就会创建一个新的活动实例。
4、singleInstance:在这种模式下会有一个单独的返回栈来管理这个活动,不管是哪个应用程序来访问这个活动都共用的同一个返回栈,也就解决了共享活动实例的问题。