/**
* 获取已安装应用信息
* @param includeSystemApps true:包含系统应用 false:不包含系统应用
*/
@SuppressWarnings("static-access")
private void getAppInfo(boolean includeSystemApps) {
PackageManager pm = mActivity.getPackageManager();
// 放到子线程中执行
List<AppInfo> appInfos = new ArrayList<>();
List<PackageInfo> packageInfos = mActivity.getPackageManager().getInstalledPackages(0);
for (PackageInfo packageInfo : packageInfos) {
/*if ((!includeSystemApps) && null == packageInfo.versionName) {
continue;
}*/
//判断是否为非系统预装的应用 (大于0为系统预装应用,小于等于0为非系统应用)
if (!includeSystemApps) {
if ((packageInfo.applicationInfo.flags & packageInfo.applicationInfo.FLAG_SYSTEM) > 0) {
continue;
}
}
AppInfo appInfo = new AppInfo();
// 获得应用名
appInfo.setName(pm.getApplicationLabel(packageInfo.applicationInfo).toString());
// 获得应用包名
appInfo.setPackageName(packageInfo.packageName);
appInfo.setIcon(packageInfo.applicationInfo.loadIcon(pm));
appInfos.add(appInfo);
}
}
获取已安装应用信息,判断是否为系统应用
最新推荐文章于 2024-03-25 10:21:54 发布