我理解的Task实际上就是Activity堆栈,由于Task里面都是以Activity为单位的,所以一个Task里可以包含来自不同App的Activity,这里把跟Task相关的学习记录下。

关于LaunchMode:

Activity的LaunchMode有四种standard、singleTop、singleTask、singleInstance,

第一种 standard:就是任何时候都启动新的Activity。

第二种 singleTop:如果要启动的Activity已经在Task的最顶层了,就复用这个Activity,否则启动一个新的。

第三种 singleTask:如果要启动的Activity已经在Task里了,则把这个Activity弹到最顶层并复用他,否则创建新的,注意,这个mode不会创建Task。

第四种 singleInstance:如果Activity还没通过singleInstance模式创建过,也就是说还没有独立的Task单独存放这个Activity的时候,就创建新的独立Task,这个Task里只有这个Activity一个;否则复用这个Task和Activity。这里用图片对这个模式详细说明下:

Android Launch Mode的学习记录

说明一下:这里A、B、C都是Activity,其中A、C都是standard模式,B是singleInstance模式,启动过程是A启动到B,B启动到C,C启动到A,然后开始点击返回。过程一目了然。

转载于:https://www.cnblogs.com/coding-way/archive/2013/06/05/3117728.html

相关文章:

  • 2021-11-28
  • 2021-09-29
  • 2021-06-24
  • 2021-06-07
  • 2021-05-23
  • 2022-12-23
  • 2021-12-02
  • 2021-08-04
猜你喜欢
  • 2021-11-20
  • 2022-01-22
  • 2021-09-26
  • 2022-12-23
  • 2021-10-01
相关资源
相似解决方案