文档章节

# Android中Activity四种启动模式和taskAffinity属性详解 #(6原创)

Blumamy
 Blumamy
发布于 2015/03/02 14:23
字数 315
阅读 25
收藏 0

# AndroidActivity四种启动模式和taskAffinity属性详解 #(6)

----------影子侠开发者社区Rong

下面验证它的全局唯一性,执行以下操作:安装另一个应用AndroidTaskTest1,在开启的MainActivity中点击按钮开启AndroidTaskTest应用中的SecondActivity。看到打印出一条新的日志:

![](http://img.blog.csdn.net/20130906212039828?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemhhbmdqZ19ibG9n/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)

 

执行adb shell dumpsys activity命令,有以下输出:

 

    TaskRecord{411189e0 #9 A com.jg.zhang.androidtasktest}

                   Run #3: ActivityRecord{4129af80 com.jg.zhang.androidtasktest/.SecondActivity}

         TaskRecord{412dc788 #12 A com.jg.zhang.androidtasktest1}

                   Run #2: ActivityRecord{4121c628 com.jg.zhang.androidtasktest1/.MainActivity}

         TaskRecord{41305528 #8 A com.jg.zhang.androidtasktest}

                   Run #1: ActivityRecord{41296e60 com.jg.zhang.androidtasktest/.MainActivity}

 

由第一个TaskRecord可以得知,开启的SecondActivity就是上次创建的编号为4129af80SecondActivity,并且Log中没有再次输出关于SecondActivity的信息,说明SecondActivity并没有重新创建。由此可以得出结论:以singleInstance模式启动的Activity在整个系统中是单例的,如果在启动这样的Activiyt时,已经存在了一个实例,那么会把它所在的任务调度到前台,重用这个实例。

### 下面开始验证第二个特点:

此文章系本人原创,如需转载,请注明出处影子侠开发者社区www.yingzixia.com


© 著作权归作者所有

共有 人打赏支持
Blumamy
粉丝 2
博文 11
码字总数 13692
作品 0
海淀
Android xml application属性详解

例子: <application android:allowClearUserData=["true" | "false"] android:allowTaskReparenting=["true" | "false"] android:backupAgent="string" android:debuggable=["true" | "fals......

恰同学少年
2015/07/28
0
0
再说Activity的四种启动模式

Android启动模式分为四种,分别为:standard、singleTop、singleTask、singleInstance stander 标准启动模式: 这是Activity默认的启动模式,也是逻辑最简单的一种,只要Activity使用这种模式...

TedYin
2014/02/23
0
0
android当中taskAffinity属性与launchMode相关

一、本文尝试解释以下问题 1. Activity被启动之后放在哪个任务栈当中?与哪些因素有关? 2. Activity的四种启动模式对Activity的启动有哪些影响? 3. 在Activity中使用startActivityForResul...

wapcdwiki
2014/07/11
0
0
你真的了解Activity的启动模式?

引言 当面试官说请你介绍一下activity启动模式,大多数人都能整两句,什么栈顶复用啊栈内复用啊,不过,你确定你真的懂启动模式吗? 如果你能回答出下面的问题,那么你可以直接退出当前界面。...

吴七禁
07/05
0
0
AndroidManifest.xml配置文件选项详解

AndroidManifest.xml下的一些属性定义和用法: ---------------------------------------------------------------------------------------------------------------------------------- a......

xiahuawuyu
2012/05/22
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Bash重定向详解

Bash重定向详解 Bash的重定向指的是将命令的输入和输出导向不同地方,而不是默认的标准输入、标准输出和标准错误。Bash的重定向实际上是对标准输入、标准输出和标准错误的重置,进而将所需输...

小陶小陶
今天
3
0
EventBus原理深度解析

一、问题描述 在工作中,经常会遇见使用异步的方式来发送事件,或者触发另外一个动作:经常用到的框架是MQ(分布式方式通知)。如果是同一个jvm里面通知的话,就可以使用EventBus。由于Event...

yangjianzhou
今天
11
0
OpenCV图像处理实例:libuv+cvui显示摄像头视频

#include <iostream>#include <opencv2/opencv.hpp>#define CVUI_IMPLEMENTATION#include <cvui.h>extern "C"{#include <uv.h>}using namespace std;#define WINDOW_NAM......

IOTService
今天
3
0
openJDK之JDK9的String

1.openJDK8的String 先来看下openJDK8的String的底层,如下图1.1所示: 图1.1 底层上使用的是char[],即char数组 每个char占16个bit,Character.SIZE的值是16。 2.openJDK9中的String 图2.1...

克虏伯
今天
4
0
UEFI 模式下如何安装 Ubuntu 16.04

作者:知乎用户 链接:https://www.zhihu.com/question/52092661/answer/259583475 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 针对UEFI模式下安装U...

寻知者
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部