前言:Activity Task是用户想要实现某个功能进行的操作的合集,这些操作是具有逻辑关系和次序的。例如,在某个应用中调用了“联系人详情”-“编辑短信”的功能,就需要在该应用中跨进程调用“短信”Package中“编辑短信”的Activity。Android根据用户的这种操作逻辑和思维习惯,把所操作的Activity和系统其它组件,依次“装载”到一个类似于“栈”的Task集合中。ActivityTask和传统意义上的“后进先出”的栈的概念默认情况下是一致的,但是Android为“栈”的组件们提供了一些Flag标志,从而比栈提供了更多的操作方式,更加符合用户操作习惯。
功能一:设置传感器任务,设计Task Stack:
功能二:设置定时任务,设计Task Stack:
其他
- 应用推到后台,如果从主屏上点击应用图标,不设置启动方式,会从Task Stack的栈底Activity进入应用;如果从后台应用中点击应用进入,则会进入到推出前所在Activity,也就是栈顶Activity
- 如果不管理Task Stack,很可能会出现A-B-C Activity的堆栈,当从C跳转到A时,new A的新实例,A-B-C-A,这样,当点击back时,又会出现ABC堆栈