Android获取高清app图标代码分享

Android获取高清app图标只有一个方法,具体内容如下

public synchronized static Drawable getIconFromPackageName(String packageName, Context context) {
  PackageManager pm = context.getPackageManager();
  if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH_MR1) {
   try {
    PackageInfo pi = pm.getPackageInfo(packageName, 0);
    Context otherAppCtx = context.createPackageContext(packageName, Context.CONTEXT_IGNORE_SECURITY);
    int displayMetrics[] = {DisplayMetrics.DENSITY_XXXHIGH,DisplayMetrics.DENSITY_XXHIGH,DisplayMetrics.DENSITY_XHIGH, DisplayMetrics.DENSITY_HIGH, DisplayMetrics.DENSITY_TV};
    for (int displayMetric : displayMetrics) {
     try {
      Drawable d = otherAppCtx.getResources().getDrawableForDensity(pi.applicationInfo.icon, displayMetric);
      if (d != null) {
       return d;
      }
     } catch (Resources.NotFoundException e) {
      continue;
     }
    }
   } catch (Exception e) {
    // Handle Error here
   }
  }
  ApplicationInfo appInfo = null;
  try {
   appInfo = pm.getApplicationInfo(packageName, 0);
  } catch (PackageManager.NameNotFoundException e) {
   return null;
  }
  return appInfo.loadIcon(pm);
 }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。