1)、查找该Activity所需的任务栈是否存在(由taskAffinity控制,或者默认为包名)。
2)、在任务栈当中查找该Activity是否存在。
这里面存在任务栈的切换,也就是当开启的singtask类型的Activity不属于当前任务栈时,则会切换到其任务栈。
singleInstance:单实例模式。
包含了singleTask的所有特性,另外加上:设置为该模式的Activity,只能单独存在于一个任务栈中。当有两个singleInstace的Activity设置成同样的任务栈时,会出现两个同名的任务栈,分别用来存放同名的Activity。
注:在任何跳转的时候,首先调用本Activity的onPause,然后跳转。如果被跳转的activity由于启动方式而没创建新的实例,则会先调用onNewIntent,然后按照正常的生命周期调用。
如
1:A→B,A:onPause;B:onCreate,onStart,onResume。
2:A(singleTop)→A,A:onPause;A:onSaveInstanceState;A:onResume。
以上是我遇到和搜集到的各类题目以及相应的解答,接下来一段时间也会持续更新,希望大家继续关注。
也祝愿大家可以找到自己喜欢的工作。
注:相关教程知识阅读请移步到Android开发频道。










