获取app图标失真问题

来源:互联网 发布:礼品卡兑换系统源码 编辑:程序博客网 时间:2024/04/30 15:12

    通过ResolveInfo类可以获取存在的APP的相关信息,包括:

APP名称:resolveInfo.activityInfo.loadLabel(packageManager).toString()

APP包名:resolveInfo.activityInfo.packageName

APP图标:resolveInfo.activityInfo.loadIcon()

    但是通过上述方法获得的APP图标有时候(如ImageView太大时)会存在失真的问题,解决如下:

try {    Resources r = mContext.getPackageManager().getResourcesForApplication(            resolveInfo.activityInfo.applicationInfo);    int iconId = resolveInfo.getIconResource();    try {        int density = (int) (mContext.getResources().getDisplayMetrics().density * 160 * 2);        localAppBean.setIcon(r.getDrawableForDensity(iconId, density));    } catch (Resources.NotFoundException e) {        localAppBean.setIcon(r.getDrawable(iconId));    }} catch (Exception e) {    e.printStackTrace();}

0 0
原创粉丝点击