如何判断应用程序是否位于堆栈顶部以及活动显示的内容?

时间:2011-09-20 13:36:47

标签: android android-activity

我有一个有很多活动的应用程序,比如A,B,C,D,E,F.活动等等。

如何判断应用程序是否位于堆栈顶部以及活动显示的内容?

1 个答案:

答案 0 :(得分:0)

它为您提供了一个正在运行的进程的列表,最近的一个 - 所以如果第一个应用程序是您的,它就在堆栈顶部。可能不是最好的解决方案,但是我现在唯一能想到的解决方案

ActivityManager am = (ActivityManager)
getSystemService(Service.ACTIVITY_SERVICE);
List<ActivityManager.RunningAppProcessInfo> processes;
processes = am.getRunningAppProcesses();
int i = 1;
for(ActivityManager.RunningAppProcessInfo info: processes) {
    System.out.println(i++ + ": " + info.processName);
} 

编辑:所以对于你的需求实际上更合适,因为你只需要第一个

ActivityManager am = (ActivityManager)
getSystemService(Service.ACTIVITY_SERVICE);
List<ActivityManager.RunningAppProcessInfo> processes;
processes = am.getRunningAppProcesses();
ActivityManager.RunningAppProcessInfo y = processes.get(0);
System.out.println("On top: " + y.processName);