`
zhangfy068
  • 浏览: 148408 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Android中Activity启动模式详解

 
阅读更多

参考http://www.cnblogs.com/fanchangfa/archive/2012/08/25/2657012.html

Activity启动模式设置:

        <activity android:name=".MainActivity" android:launchMode="standard" />

Activity的四种启动模式:
. standard

        模式启动模式,每次激活Activity时都会创建Activity,并放入任务栈中。

ActA@ID1-Act@ID2 每次都会重新创建。。
. singleTop

        如果在任务的栈顶正好存在该Activity的实例, 就重用该实例,否者就会创建新的实例并放入栈顶(即使栈中已经存在该Activity实例,只要不在栈顶,都会创建实例)。

ActA@ID1->ActB@ID2-->ActA@ID3 发现ActA不在栈顶,重新创建一个实例并放入栈顶。。
. singleTask

        如果在栈中已经有该Activity的实例,就重用该实例(会调用实例的onNewIntent())。重用时,会让该实例回到栈顶,因此在它上面的实例将会被移除栈。如果栈中不存在该实例,将会创建新的实例放入栈中。
. ActA-Actb-ActC   此时创建一个Actb

会ActA-Actb  (ActC因为在上面所以被删掉了。)

 

singleInstance

        在一个新栈中创建该Activity实例,并让多个应用共享改栈中的该Activity实例。一旦改模式的Activity的实例存在于某个栈中,任何应用再激活改Activity时都会重用该栈中的实例,其效果相当于多个应用程序共享一个应用,不管谁激活该Activity都会进入同一个应用中。

 

分享到:
评论

相关推荐

    android activity启动模式详解

    了解和掌握不同的Activity启动模式对于优化应用程序的行为至关重要。本文将详细讲解四种主要的Activity启动模式:standard、singleTop、singleTask以及singleInstance,并通过实际案例分析它们的应用场景。 1. ...

    Android中Activity四种启动模式和taskAffinity属性详解-Rong

    为了管理Activity的生命周期和用户界面的流程,Android系统提供了一系列的机制和属性,其中包括四种不同的Activity启动模式以及taskAffinity属性。这些启动模式和属性共同作用于Activity所属的任务栈(Task)和后退...

    android Activity的启动模式 作用简析+demo详解

    此篇博客意在让对启动模式不了解的开发者对其有一个较为形象的认识,至于深入探究,笔者还是推荐去看任玉刚前辈所写的《android开发艺术探索》了。 网上对Activity的启动模式讲解的博客有很多,但是大部分都需要掌握...

    Android Activity 的四种启动模式 lunchMode 和 Intent.setFlags()

    ### Android Activity 的四种启动模式与 Intent.setFlags()详解 #### 一、Android Activity 四种启动模式 在 Android 应用开发中,Activity 是构成应用的基本单元之一,它负责显示用户界面并处理用户交互。为了更...

    android Activity生命周期详解(图文)

    不同的启动模式会影响Activity在任务栈中的位置,从而影响其生命周期行为。例如,SingleTop模式下,如果新启动的Activity已经在栈顶,系统不会创建新的实例,而是调用`onNewIntent()`。 总之,深入理解Activity生命...

    Android Activity启动模式之singleTop实例详解

    在前面文章《Android Activity启动模式之standard实例详解》中,我们介绍了活动的默认启动模式standard,本文继续介绍Activity的singleTop模式。 singleTop模式:当Activity的活动模式设置为singleTop时,在启动活动...

    Android Activity启动模式之standard实例详解

    本文实例讲述了Android Activity启动模式之standard。分享给大家供大家参考,具体如下: Android的活动是通过任务Task来进行管理的,一个任务就是一组放在栈里的活动的集合,即所谓的返回栈(Back Stack)。栈具有...

    activity启动模式

    ### Activity启动模式详解 #### 一、Android进程与线程模型概述 在深入了解Activity启动模式之前,我们首先需要对Android的进程与线程模型有一个基本的认识。这将有助于更好地理解Activity是如何在不同的环境下...

    Android动态加载Activity原理详解

    `ActivityInfo`包含了Activity的元数据,如启动模式、主题等,而`loadedApk`则包含了与应用相关的所有信息,如类加载器、资源等。 在启动过程中,`ActivityClientRecord`的`packageInfo`字段起初为null,需要通过`...

    详解 Android 的 Activity 组件

    在实际开发中,合理地运用Activity的启动模式(standard、singleTop、singleTask、singleInstance)可以解决许多复杂场景的问题。 最后,关于EX01这个压缩包文件,可能包含了一些示例代码或练习项目,用于辅助学习...

    Android的Activity的Launch模式之Standard案例

    本篇将详细讲解"Standard"模式,这是Activity启动模式中最基础的一种。 1. **Standard模式详解** Standard模式是Activity的默认启动模式。在该模式下,每次启动Activity时,系统都会创建一个新的实例,并将其压入...

    详解教程Android开发中的Activity 组件

    ### 详解Android开发中的Activity组件 #### 概述 在Android开发中,`Activity`是四大组件之一,扮演着至关重要的角色。它负责提供用户界面并处理与用户的交互,每一个`Activity`通常对应一个屏幕。本文将深入探讨`...

    Android Activity启动模式之singleTask实例详解

    本文实例分析了Android Activity启动模式之singleTask。分享给大家供大家参考,具体如下: 前面的文章介绍了Android 活动Activity的启动模式:standard 和singleTop 。本文继续介绍Activity的下一个启动模式:...

Global site tag (gtag.js) - Google Analytics