`
mengsina
  • 浏览: 191525 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

singleTask和singleInstance

 
阅读更多
standard
这个是android的Activity的默认模式,如果没有配置android:launchMode ,则默认这个模式。该模式下,一个Activity可以同时被添加到多个task中,且一个task可以有多个实例,且每次通过intent启动时,都会生成一个新的实例。
无特殊情况都是用这种模式。

singleTop
该属性和standard较类似,不同的地方就是,当当前Activity的实例在当前task的栈顶时,intent启动时,则不生成新的实例,会重用(不生成新的实例)原有的实例。如果你显式指定intent的参数FLAG_ACTIVITY_NEW_TASK。如果提供了FLAG_ACTIVITY_NEW_TASK参数,会启动到别的task里。
场景就是在比如点击一个界面多点了几下,有可能会在该栈顶创建多个实例,这时候用singleTop保证只创建一个实例。

singleTask
该模式下,Activity只会有一个实例。如果某一个task中已有该Activity的一个实例存在,则不再启动新的,每次都会被重用(重用就是如果该Activity在task的栈底,则会被调到栈顶),且可以和其他的Activity共存于一个task中。
如果发现有对应的Activity实例,则使此Activity实例之上的其他Activity实例统统出栈,使此Activity实例成为栈顶对象,显示到幕前。

singleInstance
该模式和singleTask一样,唯一不同的就是,该模式下,Activity会独自拥有一个task,不会和其他Activity公用,每次Activity都会被重用,且全局只能有一个实例。
分享到:
评论

相关推荐

    singleTask和singleInstance的测试

    本测试主要关注两种特定的启动模式:singleTask和singleInstance,它们都是为了控制Activity的实例管理和任务栈的行为。 首先,`singleTask`模式是一种单实例启动模式,系统会确保只有一个该Activity的任务实例存在...

    SingleTask和SingleInstance

    本文将基于给定的信息——“SingleTask和SingleInstance”这一主题进行深入探讨,特别是这两种启动模式的应用场景、特点及其相互之间的区别。 ### SingleTask启动模式详解 #### 定义 SingleTask模式下,系统会确保...

    SingleTask与SingleInstance实例

    SingleTask与SingleInstance的区别,看过文档后还是不太明白,于是写了一个测试程序,运行TaskA,页面显示taskid,通过Next调出TaskB的Activity,每个页面都会显示当前的taskid,且通过页面透明叠加,可以清楚看到...

    android-sample-launchking:了解Activity的四种launchMode。 标准,singleTop,singleTask和singleInstance。 通过玩应用程序直接学习并体验launchMode的差异

    标准,singleTop,singleTask和singleInstance。 通过玩应用程序直接学习并体验launchMode的差异有关原始文档,请参阅A代表标准B代表singleTop C代表singleTask D代表singleInstance A1代表标准但具有不同的任务请...

    Android入门之Activity四种启动模式(standard、singleTop、singleTask、singleInstance)

    Android提供了四种不同的启动模式:standard、singleTop、singleTask和singleInstance。 1. **standard模式**: 这是Activity的默认启动模式。每次通过startActivity启动Activity时,无论当前任务栈中是否存在该...

    Activity启动模式之singleTask示例代码

    Android系统提供了四种基本的Activity启动模式:standard、singleTop、singleTask和singleInstance。每种模式都定义了Activity实例的生命周期和如何处理用户的操作。 二、singleTask启动模式 singleTask启动模式是...

    3-ANDROID 四大组件1

    Activity的启动模式分为四种:standard、singleTop、singleTask和singleInstance。standard是最常见的模式,每次启动都会创建新的Activity实例。singleTop仅当栈顶没有相同实例时才创建新Activity。singleTask模式下...

    启动模式机制导航1

    本文将深入探讨四种主要的启动模式:Standard、singleTop、singleTask和singleInstance,以及它们在UI导航中的应用。 1. **Standard(标准模式)** 标准模式是最常见的启动模式,每个启动请求都会创建一个新的...

    Android Activity的四种加载模式区别

    Android提供了四种不同的加载模式:standard、singleTop、singleTask和singleInstance。下面将详细阐述这四种模式的区别。 1. **standard**(标准模式) 这是Activity的默认加载模式,当启动一个Intent时,系统会...

    SingleTaskDemo

    在标准的Android应用中,Activity的启动模式有四种:standard、singleTop、singleTask和singleInstance。"SingleTaskDemo"很可能关注的是后两种,因为它们涉及到对Activity栈的特殊管理。 1. singleTask:这种模式...

    android启动模式探究Demo

    本Demo旨在帮助开发者深入理解Android的四种主要启动模式:Standard、SingleTop、SingleTask和SingleInstance,以及它们如何影响Activity的生命周期。 首先,我们来详细解释这四种启动模式: 1. **Standard(标准...

    Android Activity设置相同的action进行判断源码.rar

    有四种启动模式:standard、singleTop、singleTask和singleInstance。默认是standard模式,每次启动都会创建新的实例。singleTop模式下,如果任务栈顶已有该Activity的实例,就不会再创建新的。singleTask和...

    Android安卓 Activity四种启动模式(launchMode) standard, singleTop, singleTask, singleInstance

    启动模式的重要性 Android编程中经常涉及到页面的切换,启动一个新的页面(或者说Activity)的时候需要为其指定合适的“启动模式”。指定的启动模式不合适,会出现类似下面这种奇怪的效果: ...这些情况都是我在自己写...

    安卓的学习

    Activity有四种不同的启动模式,分别是:standard、singleTop、singleTask和singleInstance。这些模式主要决定了当用户点击一个Intent启动Activity时,系统如何处理已存在的或新建的Activity实例。 1. **standard...

    Android Activity LaunchMode例子

    Android提供了四种LaunchMode:standard、singleTop、singleTask和singleInstance,它们分别对应不同的启动策略。 2. standard(默认模式) 在standard模式下,每次启动Activity都会创建一个新的实例,无论当前栈中...

    全面解析Activity-的4种启动模式.doc

    本文将详细解析Activity的四种启动模式:standard、singleTop、singleTask和singleInstance。 1. **standard(标准模式)** 这是Activity的默认启动模式,每次启动都会创建一个新的实例。例如,如果你在邮件应用中...

    My Application.zip

    本文将详细解析四种启动模式——Standard、SingleTop、SingleTask和SingleInstance,并通过实例AActivity来说明它们对生命周期方法的影响。 1. Standard(标准模式) 这是Activity的默认启动模式。每次启动该...

    Activities-LaunchMode-demo,.zip

    在Android开发中,Activity是应用...例如,避免不必要的实例创建可以减少内存消耗,而合理利用SingleTask和SingleInstance可以实现更好的导航体验。通过这个开源项目,开发者可以深入学习和实践,提高Android开发技能。

    【Android进阶】(6)Activity启动模式和窗口导航

    本文将深入探讨Activity的四种启动模式——Standard、SingleTop、SingleTask和SingleInstance,以及如何通过窗口导航实现流畅的界面切换。 **一、Activity启动模式** 1. **Standard(默认模式)** - 每次启动都会...

Global site tag (gtag.js) - Google Analytics