首页 > 解决方案 > 如何检查后台活动堆栈中的实例并删除其中一个活动

问题描述

我有3 activities,一个叠一个

A -> B -> C -> D

这在android中是否可行,如何?

PS:我需要发布代码吗?..让我知道...因为只有活动,没有其他逻辑

标签: androidback-stack

解决方案


您可以使用 ActivityManager 实现此目的。下面是相同的代码,

ActivityManager m = (ActivityManager) ctx.getSystemService( ctx.ACTIVITY_SERVICE );
List<RunningTaskInfo> runningTaskInfoList =  m.getRunningTasks(10);
Iterator<RunningTaskInfo> itr = runningTaskInfoList.iterator();
while(itr.hasNext()){
    RunningTaskInfo runningTaskInfo = (RunningTaskInfo)itr.next();
    int id = runningTaskInfo.id;
    CharSequence desc= runningTaskInfo.description;
    int numOfActivities = runningTaskInfo.numActivities;
    String topActivity = runningTaskInfo.topActivity.getShortClassName();
}

这将为您提供所有活动。有关更多详细信息,请参阅文档

https://developer.android.com/reference/android/app/ActivityManager


推荐阅读