Ответ 1
- PackageManager.getInstalledApplications(int flags) предоставит вам информацию о теге AndroidManifest
Application
и только о нем. Забудьте о действиях, получателях, услугах и продолжайте. - PackageManager.getInstalledPackages(int flags), с другой стороны, предоставит вам информацию о всех элементах AndroidManifest, такие как заявленные действия, услуги, приемники, метаданные
Оба метода предоставят информацию о любом приложении, независимо от того, имеют ли они или не объявили категорию намерений android.intent.category.LAUNCHER
в какой-либо деятельности.
Кроме того, оба метода будут извлекать один PackageInfo/ApplicationInfo для APK или, более конкретно, для имени пакета.