用Drawable appIcon =(Drawable)packageInfo.applicationInfo.loadIcon( getPackageManager());获取到的icon,然后在getview函数里面重写了以下过程
ImageView imageViewIcon = (ImageView)convertView.findViewById(R.id.imageView1);
imageViewIcon.setImageDrawable(appUnit.appIcon);
但是一直获取不到icon,应用的版本和程序名都能正常获取,是不是没有添加什么权限,或者哪里写错了
ImageView imageViewIcon = (ImageView)convertView.findViewById(R.id.imageView1);
imageViewIcon.setImageDrawable(appUnit.appIcon);
但是一直获取不到icon,应用的版本和程序名都能正常获取,是不是没有添加什么权限,或者哪里写错了
ApplicationInfo appinfo = info.applicationInfo;
label = getPackageManager().getApplicationLabel(appinfo).toString();
img = getPackageManager().getApplicationIcon(info.packageName);
楼主用的这种方法可以获取到系统中所有apk的信息,包括没在launcher显示的。有个方法可以只获取到launcher里的那些apk的信息:
private List<ResolveInfo> mApps;
Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);
mApps = getPackageManager().queryIntentActivities(mainIntent, 0);
ResolveInfo info = mApps.get(position);
imageViewIcon.setImageDrawable(info.activityInfo.loadIcon(getPackageManager()));