我有一个有很多活动的应用程序,比如A,B,C,D,E,F.活动等等。
如何判断应用程序是否位于堆栈顶部以及活动显示的内容?
答案 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);