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

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

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

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

![](https://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


转载于:https://my.oschina.net/u/2312592/blog/381263

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值