可靠地确定Android中的前台应用程序

时间:2013-04-14 17:19:14

标签: android

目前我使用此代码(在我的后台服务中)来确定当前的前台应用程序:

List<ActivityManager.RunningTaskInfo> runningTask = activityManager.getRunningTasks(1);
ActivityManager.RunningTaskInfo ar = runningTask.get(0);
return ar.topActivity.getPackageName();

问题是它在99%的情况下返回正确的前台应用程序,但有时会返回false应用程序。例如,当我使用图库然后返回启动器时,它会报告启动器,有时它会进一步报告图库!对于我的应用程序,确定正确的前景应用程序非常重要。有没有更好的(100%可靠)解决方案?

提前致谢!

1 个答案:

答案 0 :(得分:3)

没有100%明确的方法来检查前台应用。您当前轮询正在运行的任务的方法几乎与它一样好。

This回答详细介绍了一个更精细的实现,可能比您的更准确,但在基础上它的想法相同。

相关问题