【Android】Activity的四种启动模式

Android对活动的管理是通过栈实现的。
每新建或销毁 Activity 时候进行特定的入栈和出栈,其具体的实现模式有以下四种:

一、standard(无显式指定,默认为该模式)

每次启动一个新的Activity,都会直接入栈并处于栈顶位置,无论栈中是否已有该Activity。

二、singleTop:栈顶复用模式

在启动Activity时检查该活动是否已经位于栈顶,是则直接使用该Activity,否则再新建Activity入栈。

三、singleTask:栈内单例模式

在启动Activity时检查栈中是否已经存在该活动;若存在,则直接将栈中该Activity之上的所有Activity出栈,将该Activity置于栈顶,否则再新建Activity入栈。

四、singleInstance:堆内单例模式

singleInstance这个启动模式是4种模式中最特殊、复杂的一个,其最大特点是:可以让我们这个应用程序和其他程序共享这个Activity的实例

指定为singleInstance启动模式的Activity启动会启用一个新的栈来管理该活动,无论是哪个应用程序来访问该Activity,都是访问的同一个栈,从而解决了共享活动实例的问题。

猜你喜欢

转载自blog.csdn.net/weixin_40849588/article/details/90142632