В качестве меры безопасности я хотел бы получить список приложений, которые не установлены в Play Маркете. Есть ли способ сделать это?Android получает список приложений для не Play Store
packageManager
содержит метод getInstalledApplications
, но я не знаю, какие флаги добавить для получения списка. Любая помощь будет оценена по достоинству.
Редактировать: Вот пример кода ответа v4_adi.
public static List<String> getAppsFromUnknownSources(Context context)
{
List<String> apps = new ArrayList<>();
PackageManager packageManager = context.getPackageManager();
List<PackageInfo> packList = packageManager.getInstalledPackages(0);
for (int i = 0; i < packList.size(); i++)
{
PackageInfo packInfo = packList.get(i);
if (packageManager.getInstallerPackageName(packInfo.packageName) == null)
{
apps.add(packInfo.packageName);
}
}
return apps;
}
Это хорошее начало, но это также возвращает много от предварительно установленных приложений Android и Samsung. Есть ли способ удалить их из списка? Я только хочу, чтобы установленные пользователем приложения были из неизвестных источников.
, если проблема не будет решена. Отметьте ответ, который решил вашу проблему как принятую. –