1、Standard:是活动默认的启动模式,在不进行显式指定的情况下,所有活动都会自动使用这种启动模式。系统不在乎这个活动是否已经在返回栈中存在,每次启动都会创建该活动的一个新的实例。
2、SingleTop:在启动活动时,如果发现栈顶已经是该活动,则认为可以直接使用它,不会再创建。
3、SingleTask:在启动活动时,会首先在返回栈中检查是否存在该活动的实例,如果发现已经存在则直接使用,并把这个活动只还是那个的所有活动都统统出栈。
4、SingleInstance:指定这种模式的活动,会启用一个新的返回栈来管理这个活动,主要为了实现其他应用程序和本地应用程序共享这个活动实例。
Activity第一次启动和已在返回栈中的启动流程
(1)Activity的第一次创建启动流程:
onCreate() -> onStart() ->onResume()
(2)SingleTask模式的Activity在Intent触发下启动流程
onNewIntent() ->onRestart() ->onStart() ->onResume()