【发布时间】:2017-07-25 18:39:02
【问题描述】:
我想在我的 android 设备上获取所有正在运行的应用程序。也许,需要使用PackageManager?我已经尝试习惯PackageManager,但我没有成功,也许,你有更好的决定?
【问题讨论】:
-
所有正在运行的应用程序或所有已安装的应用程序?
我想在我的 android 设备上获取所有正在运行的应用程序。也许,需要使用PackageManager?我已经尝试习惯PackageManager,但我没有成功,也许,你有更好的决定?
【问题讨论】:
使用下面的代码,您可以获得正在运行的应用程序列表
ActivityManager am = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
List<ActivityManager.RunningAppProcessInfo> runningAppProcessInfo = am.getRunningAppProcesses();
【讨论】:
【讨论】:
我建议以下线程。您的问题已经得到解答。
ActivityManager 有方法 getRunningTasks(int)。 ActivityManager 似乎 成为您正在寻找的解决方案。
final ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
final List<RunningTaskInfo> recentTasks = activityManager.getRunningTasks(Integer.MAX_VALUE);
for (int i = 0; i < recentTasks.size(); i++)
{
Log.d("Executed app", "Application executed : " +recentTasks.get(i).baseActivity.toShortString()+ "\t\t ID: "+recentTasks.get(i).id+"");
}
【讨论】: