Activity4种启动模式和应用场景

Activity4种启动模式和应用场景

standard:

每启动一次activity都会创建一个实例
Activity4种启动模式和应用场景
这个是最简单的一个。

singleTop:

栈顶复用,如果待启动的activity在栈顶,则不会走onCreate->onStart,而是onPause->onNewIntent->onResume

Activity4种启动模式和应用场景

singleTask:

栈内复用,启动的Activity在指定的taskAffinity的task栈中存在相应的实例,则会把它上面的Activity出栈,直到当前Activity实例位于栈顶,执行onNewIntent。若指定的task不存在,则创建,如果存在则移到前台。应用场景:应用的主界面
Activity4种启动模式和应用场景

singleInstance:

单一实例模式,整个手机操作系统里只有一个activity实例,且该task内只有该activity,如果实例存在,执行onNewIntent。应用场景:闹钟、浏览器、电话

Activity4种启动模式和应用场景