Java 如何以编程方式获取所有正在运行的应用程序的列表

Java 如何以编程方式获取所有正在运行的应用程序的列表,java,android,Java,Android,我正在尝试这种方法,但它已被弃用 ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE); List<ActivityManager.RunningTaskInfo> tasks = activityManager.getRunningTasks(Integer.MAX_VALUE); for (int i = 0; i < tasks.siz

我正在尝试这种方法,但它已被弃用

ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
List<ActivityManager.RunningTaskInfo> tasks = activityManager.getRunningTasks(Integer.MAX_VALUE);

for (int i = 0; i < tasks.size(); i++) {
    Log.e("Running task", "Running task: " + tasks.get(i).baseActivity.toShortString() + "\t\t ID: " + tasks.get(i).id);
}
ActivityManager ActivityManager=(ActivityManager)getSystemService(Context.ACTIVITY_服务);
列表任务=activityManager.getRunningTasks(整数.MAX_值);
对于(int i=0;i
您可以尝试以下方法:

Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);
List<ResolveInfo> pkgAppsList = 
context.getPackageManager().queryIntentActivities( mainIntent, 0);
Intent maintent=新意图(Intent.ACTION\u MAIN,空);
mainIntent.addCategory(Intent.CATEGORY_启动器);
列表pkgAppsList=
context.getPackageManager().QueryInputActivities(mainIntent,0);

以下是获取所有已安装应用程序列表的简单方法

 final PackageManager pm = getPackageManager();
//get a list of installed apps.
List<ApplicationInfo> packages = 
pm.getInstalledApplications(PackageManager.GET_META_DATA);

for (ApplicationInfo packageInfo : packages) {
Log.d(TAG, "Installed package :" + packageInfo.packageName);
Log.d(TAG, "Source dir : " + packageInfo.sourceDir);
Log.d(TAG, "Launch Activity :" + 
pm.getLaunchIntentForPackage(packageInfo.packageName)); 
}
final PackageManager pm=getPackageManager();
//获取已安装应用程序的列表。
列表包=
pm.GetInstalledApplication(PackageManager.GET_元数据);
对于(ApplicationInfo packageInfo:packages){
Log.d(标签,“已安装的软件包:”+packageInfo.packageName);
Log.d(标签,“源目录:”+packageInfo.sourceDir);
Log.d(标签“启动活动:”+
pm.getLaunchIntentForPackage(packageInfo.packageName));
}

不工作-只有launcher应用程序和我开发的应用程序在列表中,我认为这与您的问题相同:。这个问题中的OP在其中一个答案中评论道,这解决了他/她的问题:运行应用程序。。。未安装的应用程序。。。