`
modabobo
  • 浏览: 512088 次
文章分类
社区版块
存档分类
最新评论

android singleTask

 
阅读更多

本文载自http://blog.csdn.net/wang_zun_ren/article/details/6823257

现有2个项目,taskA、taskB。taskA负责调用taskB中指定的界面。

taskB中有3个界面,a、b、c,每个界面显示它所在的task id。

SingleTask:

其中b界面被声明为SingleTask。

先运行taskB,显示a界面,由a界面调用b界面,这时b界面的taskid与a界面的taskid是一致的,说明b界面与a界面在同一个task中;由b界面调用c界面时,c界面的taskid与a和b界面的taskid一致,说明这三个界面是在同一个task中。当前显示的是c界面,此时按Home键回到桌面,运行taskA的界面调用taskB的b界面,这时b界面显示出来,它的taskid没有变,还是之前的taskid,只不过之前显示的是c界面,这时c界面已经不知所踪,这时再按back键,则回到了a界面,然后是taskA的界面。

这说明,SingleTask所标注的Activity在被自身的app调用时,是不新建task的,同时,如果系统中存在了这个SingleTask界面的实例时,会将其所在的task切换到前台,并把这个任务栈中SingleTask界面之后开启的其他界面全部finish掉


另外有一种情况,例如:a界面被调用,这时按Home键返回到桌面,启动taskA,并调用b界面,这时b界面的taskid与a界面的一致,说明b界面与a界面同属于一个task。如果直接运行taskA调用b界面,b的taskid与taskA的界面的taskid不同,说明在新task中实例化了b界面,由b界面调用c界面,c界面的taskid与b界面一致,说明b与c同属于一个task。


分享到:
评论

相关推荐

    android singleTask几个注意点

    NULL 博文链接:https://uuubd.iteye.com/blog/1900472

    Android的Activity的Launch模式之SingleTask案例

    Android的Activity的Launch模式之SingleTask案例,实际案例源码

    Activity生命周期与启动模式

    Activity7大生命周期与4种启动模式(standard,singleTop,singleTask,singleIntance)

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

    当应用运行起来后就会开启一条线程,线程中会运行一个任务栈,当Activity实例创建后就会放入任务栈中。Activity启动模式的设置在AndroidManifest.xml文件中,通过配置Activity的属性android:launchMode=""设置

    SingleTask与SingleInstance实例

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

    singleTask和singleInstance的测试

    http://blog.csdn.net/dinko321/article/details/8314974 的验证代码

    singleTask无效 (Nubia)apk

    来自我的文章http://www.jianshu.com/p/71d99b8bfd5d 中的apk,关于singleTask在Nubia手机无效的问题

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

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

    Cc_Player android播放器

    此源代码为android播放器源码,运用到服务services,还android的任务singleTask并且解决其传递参数问题

    LaunchMode的使用

    Activity是Android最常用的组件之一,也是最直观的组件,Activity启动时有四种模式,分别是: “standard” "singleTop" "singleTask" "singleInstance" 其中"standard"是默认模式。

    Android代码-仿微信app.rar

    android:launchMode="singleTask" android:screenOrientation="portrait" android:theme="@style/horizontal_slide" android:windowSoftInputMode="adjustResize"> <!-- 添加好友 --> android:name=...

    Android 启动activity的4种方式及打开其他应用的activity的坑

    Android启动的四种方式分别为standard,singleTop,singleTask,singleInstence。 standard是最常见的activity启动方式,也是默认的启动的方式。当启动一个activity的时候他将进入返回栈的栈顶。系统不会管栈内是否...

    android activity启动模式详解

    android activity启动模式:standard、singleTop、singleTask、singleInstance详解

    android中的Activity启动方式

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

    android Activity 四种启动模式例子

    Android的Activity一共有4中启动模式分别是:standard、singleTop、singleTask、singleInstance。资源是该例子的项目,直接导入项目即可。

    Android之Activity启动模式Demo

    Android 有四种启动模式, 分别是 standard、singleTop、singleTask 、singleInstance 这个Demo实现了其中的三个启动模式

    Android自主学习项目报告(一).doc

    获得焦点 暂停状态: Activity可见,但被其它Activity覆盖,没有获得焦点 停止状态:不可见,失去焦点 销毁状态:Activity结束,或所在进程被结束 Activity有4种启动模式,分别为standard、singleTop、singleTask和...

Global site tag (gtag.js) - Google Analytics