1. 在前文的基础上,修改SecondActivity,android:launchMode="三种模式名"

* singleTop模式:
* singleTop模式下,如果栈顶已经是当前的任务了,那么就不会创建新的相同的任务,但是依旧可以创建其他的任务。即不可以连续创建多个相同的任务在栈顶
* 使用场景:为了保证只有一个任务而不创建多个,所以就需要这种模式。比如浏览器的书签,应用的通知推送(单个应用推送多个信息,点击后只能有一个界面)。
*
* singleTask模式:
* 如果我们要创建的任务没有,就会创建任务,并且放置栈顶
* 如果要创建的任务已经存在了,就会把这个任务以上的所有任务全部从栈中移除,使得当前任务成为最顶部的任务,如果已经在顶部,也不会再创建新的相同的任务
* 使用场景:当我们这个任务占的资源相对较大时,就使用singleTask模式
*
* singleInstance模式:
* 前面三种启动模式,都是在同一个任务栈里的。但是singleInstance比较特别,它是独立一个任务栈,是一个单一的对象。
* 如果前面没有创建,那么创建的时候会独立的创建一个栈。如果已经创建了,那么在创建时就不会创建,只是把该栈提前
* 应用场景:只有唯一一个实例,比如Launcher,又比如有道词典的取词,因为其在每个界面都可以取词。
posted on 2021-10-03 15:10  EndlessShw  阅读(197)  评论(0编辑  收藏  举报