源码下载:
https://download.csdn.net/download/qq_31939617/10479618下载
首先介绍一下任务栈:
(1)程序打开时就创建了一个任务栈, 用于存储当前程序的activity,所有的activity属于一个任务栈。
(2)一个任务栈包含了一个activity的集合, 去有序的选择哪一个activity和用户进行交互:只有在任务栈栈顶的activity才可以跟用户进行交互。
(3)任务栈可以移动到后台, 并且保留了每一个activity的状态. 并且有序的给用户列出它们的任务, 而且还不丢失它们状态信息。
(4)退出应用程序时:当把所有的任务栈中所有的activity清除出栈时,任务栈会被销毁,程序退出。
任务栈的缺点:
(1)每开启一次页面都会在任务栈中添加一个Activity,而只有任务栈中的Activity全部清除出栈时,任务栈被销毁,程序才会退出,这样就造成了用,户体验差, 需要点击多次返回才可以把程序退出了。
(2)每开启一次页面都会在任务栈中添加一个Activity还会造成数据冗余, 重复数据太多, 会导致内存溢出的问题(OOM)。
本文详细介绍了Android中Activity的四种启动模式:standard、singleTop、singleTask和singleInstance,包括它们的工作原理和适用场景。例如,standard模式每次启动都会创建新实例,而singleTop模式则会复用栈顶的实例。singleTask模式会清除栈中上方的Activity,使其成为栈顶,适合作为程序入口。最后,singleInstance模式会在新的任务栈中启动Activity,确保其独立。
订阅专栏 解锁全文

919

被折叠的 条评论
为什么被折叠?



