按照标题,我正在寻找一种解决方案,以仅显示具有启动器意图的应用程序。这是我获取应用列表的代码:
public static List<ApplicationInfo> getInstalledApplication(Context context) {
PackageManager packageManager = context.getPackageManager();
List<ApplicationInfo> apps = packageManager.getInstalledApplications(0);
Collections.sort(apps, new ApplicationInfo.DisplayNameComparator(packageManager));
return apps;
}
是否可以添加规则以删除所有没有启动器意图的软件包?谢谢
我设法使用marcus.ramsden提供的代码片段来自己解决:
public static List<ApplicationInfo> getInstalledApplication(Context context) {
PackageManager packageManager = context.getPackageManager();
List<ApplicationInfo> apps = packageManager.getInstalledApplications(0);
List<ApplicationInfo> appInfoList = new ArrayList();
for (ApplicationInfo info : apps) {
if (packageManager.getLaunchIntentForPackage(info.packageName) != null) {
appInfoList.add(info);
}
}
Collections.sort(appInfoList, new ApplicationInfo.DisplayNameComparator(packageManager));
return appInfoList;
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句