Android限制最大活动堆栈

时间:2014-05-22 06:41:07

标签: android android-intent android-activity

我有一个Android应用程序,有大约50个活动。

目前我已经实现了默认行为,即当用户启动新活动时,我只是将现有的活动放入堆栈中,并且在用户按下之前不要删除。

我喜欢这个,因为用户可以随时按回来恢复他的上一次活动..

现在问题是在设计内存较少后出现OutOfMemory错误。

我能找到的一个解决方案是使用FLAG_ACTIVITY_CLEAR_TOP,如文档中所解释的那样,将从堆栈中删除被调用活动的最后一个条目之上的活动。如果堆栈具有A-> B-> C-> D并且用户转到B C并且D从堆栈中移除。 我对这个解决方案的问题是,如果现在用户点击回来,他可能会转到A,而他可能会期待转到D ..

我的问题 :有没有办法在活动堆栈上定义最大限额?即如果我定义了15,那么堆栈中最多只有15个活动,第17个活动开始它将自动从堆栈中删除第一个活动并在堆栈中保持第2到第16个,如果我从第18个开始#&# 39;在堆栈中有第3到第17位。

0 个答案:

没有答案