Android(安卓)Task
Android Task:
Android的Task是一个Activity栈,用来完成用户的某一个目的,而不管这个Acitivity是属于哪个AP的。Task中的Activity可以分属于不同的AP。
在Task中,有一个Acitivity叫root activity,它是用来启动一个Task。
Tasks在系统中做交互的时候,这个Task所包含的所有Activities会被作为一个整体移动。比方说:Task A被设置成foreground/background task的时候,整个task(activity stack)都会随之移动。
(再补充一点就是说:一个Activity栈也可能是由一个或多个Task组成。)
Task中还有一个重要的属性就是用户可以中断目前正在做的事情,而去跑另外一个Task。基于这样一个特性,用户就可以同时跑不同的task,而且可以在它们之间切换。
有三个方法中断Task:1.Notification;2.用户操作,比如按Home或者开启另外一个程序;3.Activity中自己定义的New Task,比如说Map或者Browser,在Email中选择address会Launch Google Map,选择Link会Launch Browser,等等。
Applications:
一个Android Application由一个或者多个Acitivity组成,这其中或许还包括一个或多个Service,它会被打包成.apk文件。
补充:Launch Activity的四种模式:standard(default),singleTop,singleTask,singleInstance
standard或者singleTop activity可以被实例化多个,而singleTask或singleInstance只可以有一个实例。
Activity B Activity B
Activity D Activity B
Activity C Activity D singleTop = single + top
Activity B Activity C
Activity A Activity A
B是singleTop B不是singleTop
更多相关文章
- IKNinePhotoView 是一个开源的 Android(安卓)九宫格控件,可以自适
- 深入理解Android系统多用户
- Android(安卓)Task概念以及相关
- 《Android(安卓)Dev Guide》系列教程
- android: 横竖屏切换总结-布局改变和数据保存
- 对AndroidManifest.xml的一点理解
- Activity的生命周期
- 【Android】Android(安卓)UI显示原理
- 对TabHost、TabWidget的理解分析