Android启动模式launchMode

Posted Edwin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android启动模式launchMode相关的知识,希望对你有一定的参考价值。

android里,有4种Activity的启动模式并分别介绍下:

  1. standard
  2. singleTop
  3. singleTask
  4. singleInstance

AndroidManifest.xml配置android:launchMode属性

 

1.standard:

  默认启动模式.

  每次都会创建一个实例,每个任务栈里面都可以使用。


 

2.singleTop:

  系统会按照singleTop启动模式处理跳转行为.跳转时系统会先在栈结构寻找是否有一个Activity实例正位于栈顶,如果有则不在生成新的,而是直接使用。如果系统发现存在有Activity实例,但不是位于栈顶,重新生成一个实例.

  singleTop启动模式就是这样,如果发现对应的Activity实例正处于栈顶,反复创建也就只能创建一个实例(反复利用不生成新的实例).反之,此时不处于栈顶就创建新的实例。


 

3.singleTask:

  如果发现有对应的Acitivty实例,则使此Activity实例之上的Activity实例统统退出栈,使此Acitivity实例成为栈顶对象,显示到屏幕前。


 

4.singleInstance:

  这钟启动模式比较特殊,因为它会启用一个新的栈结构,将Activity放置于新的栈结构中,并保证不再有其他Activity实例进入.

  只存在一个独立的任务栈里面,一个任务栈就只包括它一个。


 

 

 

待续.......

  1.这些启动模式在哪里地方能用到呢?

  2.文字表述比较抽象,画图演示可好?

  3.启动模式背后的秘密?

 

以上是关于Android启动模式launchMode的主要内容,如果未能解决你的问题,请参考以下文章

Android-Activity启动模式(launchMode)

Android启动模式LaunchMode的应用场景

android launchmode(四种启动模式)应用场景及实例

全面解析Activity启动模式(LaunchMode)

Activity启动模式(launchMode)详解

android launchmode 使用场景