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"/>