【笔记】【Android】Activity的Task模式
1.【笔记】【Android】Manifest中的intent-filter使用
2.【笔记】【Android】Activity的Task模式
【笔记】【Android】Activity的Task模式
笔记系列,内容是从网络搜索的结果,不一定是正确的理解。
如果存在谬误,欢迎大家指正。
Task
一个应用可能会包含多个Activity,管理这些Activity顺序的容器,就是Task。
- 当Activity1拉起Activity2时,Task会将Activity2压栈,将显示Activity2的内容。
- 当用户点击Back按钮时,Task会将Activity2出栈,继续显示Activity1的内容。
为什么要创建多个Task
Launcher以及App是相对独立的存在。
- 当显示Launcher时,其他App可以在后台等待唤醒。
- 当某个App在显示中时,Launcher可以和其他App在后台等待唤醒。
如果将所有的画面(Activity)混在一起,当多个App进行前后台切换时,画面堆栈的管理将不可实施。
四种模式(Standard,SingleTop,SingleTask,SingleInstance)
标准模式(Standard)
可以重复创建多个实例。
栈顶复用模式(SingleTop)
如果要启动的Activity已经在栈顶,则直接复用,不会创建。
栈内复用模式(SingleTask)
如果Activity已经启动,执行clearTop,将其之上的Activity都出栈。一般用于MainActivity。
栈内唯一模式(SingleInstance)
Activity标志位
FLAG_ACTIVITY_CLEAR_TOP
这个标志位可以用于需要返回Task栈中某个Activity的场景。针对Activity的一次性设置。
FLAG_ACTIVITY_NEW_TASK
启动一个Activity,并且将其放到一个全新的Task中。
适用于以下情况。
- 外部的其他App启动另一个App的情况。
- 一个没有界面的Service或者BroadcastReceiver等拉起Activity的情况。
- 启动一个需要独立Task栈的情况。
本文来自博客园,作者:GiraKoo
转载请注明原文链接:https://www.cnblogs.com/girakoo/p/18515741
友情链接:GiraKoo | 博客园 | CSDN | 稀土掘金
合集:
Android学习笔记
分类:
学习笔记
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异