Android中Task是一个逻辑上的概念,简单地说,就是一个栈里面顺序存储着的多个Activity。这些Activity可以是来自同一个App,也可以是来自不同的Apps。
当点击这个图标,或者快捷方式,Todo List中入口的Main Activity就会被创建,而与此同时,一个Stack也会被创建,然后,Activity会被放到这个Stack中。
当Main Activity,点击列表项,Detail Activity会创建,也被放到Stack中。
当在Detail Activity中点击“查看图片”进入Image Activity,Image Activity也被放入Stack中,
而当Image Activity,通过Intent,调用系统中另外一个App(照相机)去获取照片时,它调用的其实是照相机App中的一个Activity,在默认这个情况下,这个Activity也是被放在当前的Stack中。
Task的创建
比如之前的一个Todo List的Demo,当它被安装到手机上之后,在应用程序列表,也即Launcher中,会有一个图标显示,如果长按这个图标,还能为其在桌面上创建一个快捷方式。当点击这个图标,或者快捷方式,Todo List中入口的Main Activity就会被创建,而与此同时,一个Stack也会被创建,然后,Activity会被放到这个Stack中。
当Main Activity,点击列表项,Detail Activity会创建,也被放到Stack中。
当在Detail Activity中点击“查看图片”进入Image Activity,Image Activity也被放入Stack中,
而当Image Activity,通过Intent,调用系统中另外一个App(照相机)去获取照片时,它调用的其实是照相机App中的一个Activity,在默认这个情况下,这个Activity也是被放在当前的Stack中。
上面的这个流程如下图所示: