Назад к вопросам
Junior
67
questionbank

Как получить список всех приложений, установленных на телефоне?

Sobes Copilot

Получайте ответы в реальном времени

Ответ от нейросети

sobes.tech AI

// Получаем менеджер пакетов
val packageManager: PackageManager = context.packageManager

// Определяем флаги для получения дополнительной информации (опционально)
// В данном случае - только основные сведения о приложении
val flags = PackageManager.GET_META_DATA

// Получаем список всех установленных пакетов (приложений)
val applications: List<ApplicationInfo> = packageManager.getInstalledApplications(flags)

// Пример вывода имен пакетов
for (app in applications) {
    // Получаем имя пакета (иногда используется как ID)
    val packageName = app.packageName
    // Дополнительно можно получить читаемое имя приложения
    val appName = packageManager.getApplicationLabel(app).toString()
    println("Package Name: $packageName, App Name: $appName")
}

Необходимо добавить разрешение QUERY_ALL_PACKAGES в manifest-файл, если целевой API уровень выше 30 и требуется получить список всех приложений, а не только тех, с которыми взаимодействует ваше приложение.

<uses-permission android:name="android.permission.QUERY_ALL_PACKAGES"/>