Я пытаюсь создать приложение для запуска Я создал панель приложений и получил приложения с этим кодом
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_app_drawer)
view.adapter = getInstalledApps()?.let { AppDrawerAdapter(this, it) }
view.layoutManager = GridLayoutManager(this, 5)
view.hasFixedSize()
}
private fun getInstalledApps(): List<AppItem>? {
val apps: MutableList<AppItem> = ArrayList()
val intent = Intent(Intent.ACTION_MAIN, null)
intent.addCategory(Intent.CATEGORY_LAUNCHER)
val untreatedAppList =
applicationContext.packageManager.queryIntentActivities(intent, 0)
for (untreatedApp in untreatedAppList) {
val appName =
untreatedApp.activityInfo.loadLabel(packageManager).toString()
val appPackageName = untreatedApp.activityInfo.packageName
val appImage = untreatedApp.activityInfo.loadIcon(packageManager)
val app = AppItem(appName, appImage, appPackageName)
if (!apps.contains(app)) apps.add(app)
}
return apps
}
приложения отображаются в неспецифическом порядке c как расположить их в алфавитном порядке