Код: Выделить всё
PackageManager packageManager = getPackageManager();
List apps = packageManager.getInstalledApplications(PackageManager.GET_META_DATA);
List systemApps = new ArrayList();
List userApps = new ArrayList();
for (ApplicationInfo appInfo : apps) {
if ((appInfo.flags & ApplicationInfo.FLAG_SYSTEM) != 0) {
systemApps.add(appInfo);
} else {
userApps.add(appInfo);
}
}
< /code>
Это правильно отделяет системные приложения от пользовательских приложений. Тем не менее, [b] некоторые приложения плагинов (например, ресурсы WiFi, Gnssdebuggreport, MDML -образец и т. Д.) Также появляются в списке системных приложений [/b].
👉 есть любое Конкретный флаг в ApplicationInfo Подробнее здесь: https://stackoverflow.com/questions/794 ... agemanager