Как получить и перечислить все установленные / доступные приложения для навигации вместе с их значками в Android? - PullRequest
2 голосов
/ 27 мая 2020

Как указано в теме, я ищу способ получить и перечислить все доступные приложения для навигации, установленные на устройстве Android, вместе с соответствующими значками. Допустим, на устройствах есть Google Maps и Waze, я хочу получить всю информацию об этих приложениях, например их имя, значок и пакет, чтобы открывать их из кода.

1 Ответ

2 голосов
/ 27 мая 2020

Вы можете попробовать это:

val packageManager: PackageManager = viewLayer.activity.packageManager
val intent = Intent(Intent.ACTION_VIEW, Uri.parse("geo:0,0"))
val resolvedInfoList: List<ResolveInfo> = packageManager.queryIntentActivities(
    intent,
    PackageManager.MATCH_DEFAULT_ONLY
)
for (resolvedInfo in resolvedInfoList) {
    val packageName: String = resolvedInfo.activityInfo.applicationInfo.packageName
    val appName: String = resolvedInfo.activityInfo.applicationInfo.loadLabel(packageManager).toString()
    val launcherIcon: Drawable = resolvedInfo.activityInfo.applicationInfo.loadIcon(packageManager)
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...