获取手机安装的所有程序
1.获取包管理器对象 PackageManager pm = context.getPackageManager(); 2.得到所有安装的程序包名 List<PackageInfo> infos = pm.getInstallPackages(PackageManager.GET_UNINSTALLED_PACKAGES); 3.然后遍历这个集合 for( PackageInfo packInfo : infos){ Drawable icon = packInfo.applicationInfo.loadIcon(pm); //获取应用图标 String appName = packInfo.applicationInfo.loadLabel(pm).toString(); //获取应用名字 ApplicationInfo info = packInfo.applicationInfo; } 判断是三方应用还是系统应用的方法 public boolean filterApp(ApplicationInfo info) { if ((info.flags & ApplicationInfo.FLAG_UPDATED_SYSTEM_APP) != 0) { return true; } else if ((info.flags & ApplicationInfo.FLAG_SYSTEM) == 0) { return true; } return false; }