ANDROID四种启动模式:

1.standard:默认的启动模式,每次新建一个实例对象。

2.singleTop:如果在任务栈顶发现了相同的实例则复用该实例,否则新建一个实例并压入栈顶。

3.singleTask:如果在任务栈中发现了相同的实例,则将压在该实例上的其他全部移除,并复用该实例。

4.singleInstance:允许不同应用,线程,进程都复用同一个实例,无论从哪调用都复用该实例。

Mainifest.xml中配置Activity的启动模式,不配置的话,默认standard启动。但是这种着实太浪费,使用的时候还是应该考虑其他三种。

standard:

singleTop:

<activity
    android:name=".SingleTopActivity"
    android:label="@string/singletop"
    android:launchMode="singleTop" >
</activity>

singleTask:

使用时要特别注意,因为会移除压在该实例上面的所以实例。

<activity
    android:name=".SingleTopActivity"
    android:label="@string/singletop"
    android:launchMode="singleTop" >
</activity>

singleInstance:

举例来说:在微信里点击“用浏览器打开”一个朋友圈,然后切到QQ再用浏览器开一个网页,再跑到哪里再开一个页面。每次我们都在Activity中试图启动另一个浏览器Activity,但是在浏览器端看来,都是调用了同一个自己。因为使用了singleInstance模式,不同应用调用的Activity实际上是共享的。

<activity
    android:name=".SingleTopActivity"
    android:label="@string/singletop"
    android:launchMode="singleTop" >
</activity>

Activity的Launch Mode的更多相关文章

  1. Activity的Launch mode详解 singleTask正解

    Activity有四种加载模式:standard(默认), singleTop, singleTask和 singleInstance.以下逐一举例说明他们的区别: standard:Activity ...

  2. Activity的Launch mode详解,A B C D的singleTask模式

    本文参考了此文http://hi.baidu.com/amauri3389/blog/item/a54475c2a4b2f040b219a86a.html 另附 android task与back s ...

  3. Activity的Launch mode详解 :standard(默认), singleTop, singleTask和 singleInstance

    本文参考了此文http://hi.baidu.com/amauri3389/blog/item/a54475c2a4b2f040b219a86a.html 另附 android task与back s ...

  4. Activity — 4 launch mode

    launchMode在多个Activity跳转的过程中扮演着重要的角色,它可以决定是否生成新的Activity实例,是否重用已存在的Activity实例,是否和其他Activity实例公用一个task ...

  5. Android Activity task 相关属性

    所谓的 task ,是指用户完成某一项任务时与之交互的一组 Activity.比如用户要向开发者汇报 bug,先打开程序主页,然后打开关于页面,再点击报告 bug 按钮,打开编辑邮件页面.当前这三个 ...

  6. Android Activity launchMode研究

    Android Activity launchMode研究 Activity的Launch mode一共有四种: standard, singleTop, singleTask, singleInst ...

  7. Activity Intent相关FLAG介绍

    先首先简单介绍下Task和Activity的关系   Task就像一个容器,而Activity就相当与填充这个容器的东西,第一个东西(Activity)则会处于最下面,最后添加的东西(Activity ...

  8. Android 四大组件之一(Activity)

    Activty的生命周期的也就是它所在进程的生命周期. 一个Activity的启动顺序: onCreate()——>onStart()——>onResume() 当另一个Activity启 ...

  9. android Activity的启动模式与flag的见解

    最近做一个安卓项目,想要实现的效果就是:当打开一个按钮的时候,启动了一个A功能,当用户返回到桌面再继续进去的时候,不过之前在哪个Activity,都会先跳转到A功能的那个界面,当用户点击返回的时候,再 ...

随机推荐

  1. css3各个属性的兼容

    1.transition:IE10. Firefox.Opera.Chrome支持: Safari支持替代的-webkit-transition属性: 2.animation: IE10.FIrefo ...

  2. Android中的slidingmenu

    简介 SlidingMenu作为滑动侧边栏主要用来代替Android传统的Menu菜单. 导入方法 SlidingMEnu以前依赖于另一个开源库ActionBarSherlock,但是现在被AppCo ...

  3. storm启动过程之源码分析

    TopologyMaster: 处理拓扑的一些基本信息和工作,比如更新心跳信息,拓扑指标信息更新等   NimbusServer: ** * * NimbusServer work flow: 1. ...

  4. C++ TR1 Function Bind

    在C++ 11出现以前,C++的事件一般是通过回调形试来实现,如 void (*func)(int,int,int),其实际上是一种函数指针,在C中调用时是直接写函数名在参数列表中,而在C++中,大部 ...

  5. [转]显卡帝揭秘3D游戏画质特效

    显卡帝揭秘3D游戏画质特效 近几年来,大量采用最新技术制作的大型3D游戏让大部分玩家都享受到了前所未有的游戏画质体验,同时在显卡硬件方面的技术革新也日新月异.对于经常玩游戏的玩家来说,可能对游戏画质提 ...

  6. Parse xml/json[xpath/jpath]

    import groovy.util.XmlSlurper import groovy.util.XmlParser import com.eviware.soapui.support.GroovyU ...

  7. reinstall ubuntu

    flickering mouse issue http://askubuntu.com/questions/310341/do-graphics-drivers-for-intel-hd-4600-e ...

  8. Remove openjdk in Ubuntu/Configure jdk and running adb in 64-bit Ubuntu

    sudo apt-get autoremove openjdk-7-jre sudo apt-get purge openjdk* java -version No openjdk available ...

  9. 添加网络打印机的步骤(xp和win2008)

    1.如题,设置好打印机去的ip地址和子网掩码等信息. 2 .xp不像其他新的系统那么好用那么智能...只能慢慢来 如果是xp,注意,请添加网络打印机的时候选  :添加本地打印机,,记得哦 然后如图 然 ...

  10. 音频软件消除人声的一点体会(cood edit ,goldwav)

    音频软件消除人声的一点体会(cood  edit ,goldwav) 使用方法: 1.打开文件 2.命令处理(红色位置可以调整到你认为合适的数据或效果) 3.效果:两个软件均处理后的效果均可以接受.不 ...