Android startactivity和堆栈保留在内存中

d-m*_*man 2 android android-activity

我们开始活动并且不在现有活动上调用finish()它将现有活动保持在堆栈中并且如果我们按下后退按钮我们将返回到上一个活动,移动到新活动.

它的意思是所有以前没有被称为finish()的活动保持在内存中(Stack)

现在问题是我不想为每个活动调用完成是否有任何集中的地方我可以定义只保留堆栈中的最后3个活动并删除其余的活动?

fup*_*uck 7

在[activity]标签中的Android Manifest中,您可以指定android:noHistory - 当用户离开活动时,是否应该从活动堆栈中删除活动并完成(调用其finish()方法)并且不再在屏幕上可见 - 如果应该完成则为"true",否则为"false".默认值为"false".值"true"表示活动不会留下历史痕迹.它不会保留在任务的活动堆栈中,因此用户将无法返回该任务.该属性在API Level 3中引入.