我需要获取已作为设备管理员安装的应用程序的包信息列表。您共享的代码应支持 Adroid Api 版本 8。
以下代码将为我提供已下载应用程序信息的列表,但我需要在列表中添加一个额外的过滤器,因为该应用程序应该是启用设备管理员的应用程序
List<PackageInfo> packs = getPackageManager().getInstalledPackages(0);
for(int i=0;i<packs.size();i++) {
PackageInfo p = packs.get(i);
if ((!getSysPackages) && (p.versionName == null)) {
continue ;
}
PInfo newInfo = new PInfo();
newInfo.appname = p.applicationInfo.loadLabel(getPackageManager()).toString();
newInfo.pname = p.packageName;
newInfo.versionName = p.versionName;
newInfo.versionCode = p.versionCode;
newInfo.icon = p.applicationInfo.loadIcon(getPackageManager());
res.add(newInfo);
}
提前致谢