• Android--获取高清的app图标


    只有一个方法。

     1 public synchronized static Drawable getIconFromPackageName(String packageName, Context context) {
     2         PackageManager pm = context.getPackageManager();
     3         if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH_MR1) {
     4             try {
     5                 PackageInfo pi = pm.getPackageInfo(packageName, 0);
     6                 Context otherAppCtx = context.createPackageContext(packageName, Context.CONTEXT_IGNORE_SECURITY);
     7                 int displayMetrics[] = {DisplayMetrics.DENSITY_XXXHIGH,DisplayMetrics.DENSITY_XXHIGH,DisplayMetrics.DENSITY_XHIGH, DisplayMetrics.DENSITY_HIGH, DisplayMetrics.DENSITY_TV};
     8                 for (int displayMetric : displayMetrics) {
     9                     try {
    10                         Drawable d = otherAppCtx.getResources().getDrawableForDensity(pi.applicationInfo.icon, displayMetric);
    11                         if (d != null) {
    12                             return d;
    13                         }
    14                     } catch (Resources.NotFoundException e) {
    15                         continue;
    16                     }
    17                 }
    18             } catch (Exception e) {
    19                 // Handle Error here
    20             }
    21         }
    22         ApplicationInfo appInfo = null;
    23         try {
    24             appInfo = pm.getApplicationInfo(packageName, 0);
    25         } catch (PackageManager.NameNotFoundException e) {
    26             return null;
    27         }
    28         return appInfo.loadIcon(pm);
    29     }
  • 相关阅读:
    关于泛型
    共享几个.net工具类
    关于Guid
    自动更新解决方案
    订阅者模式实例
    好久没有blog了,今日就share一个update program的经验
    杀掉相应数据库的进程
    解决IFrame下无法写Cookie问题
    sql处理死锁
    log4net配置及使用方法
  • 原文地址:https://www.cnblogs.com/819158327fan/p/5920513.html
Copyright © 2020-2023  润新知