如何在程序退出的时候清除activity栈

在公司里接手了一个后期的项目,由于项目前期对activity栈管理的不够谨慎,所以导致了在某些情况下程序退出的时候没有将activity栈清除掉。在网上找到的无非就是那几种例子,都不是最好的解决办法。今天尝试了一种方式,感觉效果还是可以的。

代码:

1   ActivityManager am = (ActivityManager)getSystemService(getApplication().ACTIVITY_SERVICE);
2                 List<ActivityManager.AppTask> appTaskList=  am.getAppTasks();
3                 for (ActivityManager.AppTask at:appTaskList) {
4                     at.finishAndRemoveTask();
5                 }

无非就是获取所有的栈,然后将栈finish和Remove掉就可以了。

原文地址:https://www.cnblogs.com/weifengzz/p/5390041.html