2

我想知道任何应用程序何时打开。明确地说,我正在制作阻止某些应用程序的服务(根据用户),我想检查应用程序是否类似于阻止列表中的任何应用程序并中止该应用程序进程。它需要root访问权限吗?

4

2 回答 2

0

您可以知道当前打开了哪些应用程序

ActivityManager manager = 
    (ActivityManager) this.getSystemService(ACTIVITY_SERVICE);
List<RunningAppProcessInfo> processes = manager.getRunningAppProcesses();

现在从processes找到您的应用程序并根据您的要求编写逻辑。

于 2012-04-09T06:05:20.900 回答
0

使用此代码

ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
List<RunningTaskInfo> runtasks = activityManager.getRunningTasks(Integer.MAX_VALUE);
for (int i = 0; i < runtasks.size(); i++) {
Log.d("Running task", "Running task: " + runtasks.get(i).baseActivity.toShortString() + "\t\t ID: " + runtasks.get(i).id);
}
于 2012-04-09T06:13:07.717 回答