Sobes.tech
Junior

Телефонға орнатылған барлық қолданбалардың тізімін қалай алуға болады?

sobes.tech AI

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("Пакет атауы: $packageName, Қосымша атауы: $appName")
}

Мақсатты API деңгейі 30-дан жоғары болса және барлық қосымшалардың тізімін алу қажет болса, QUERY_ALL_PACKAGES рұқсатын manifest-файлға қосу керек:

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