Выборочное отображение приложений в Android
Я делаю приложение запуска, и я хотел бы знать, как выборочно отображать приложения на моем модуле запуска на основе пользовательского ввода. Как и другие программы запуска, все приложения будут отображаться нормально, но в моем модуле запуска пользователь может, если он хочет, не показывать некоторые приложения.
Так как бы я позвонил PackageManager
показать / не показать несколько избранных приложений?
Мой нынешний путь-
- Запросить все приложения из
PackageManager
и держать его в<ResolveInfo>
список - Держите приложения не показывать в другом
<ResolveInfo>
список - Вычтите списки и передайте новый список, чтобы заполнить мой лаунчер
Мне нужна помощь на шаге 3
1 ответ
Решение
Вы можете использовать этот код, чтобы сравнить выбранное пользователем приложение, чтобы скрыть его с установленным приложением и создать новый список, который будет отображаться в вашей панели запуска:
List<PackageInfo> packageInfos=getPackageManager().getInstalledApplications();
List<PackageInfo> newList=new ArrayList<>();
for (PackageInfo packs:
packageInfos) {
if(!packs.packageName.equals("User input package name"))
newList.add(packs);
}