类android.content.pm.PackageItemInfo源码实例Demo

下面列出了怎么用android.content.pm.PackageItemInfo的API类实例代码及写法,或者点击链接到github查看源代码。

/**
 * @hide
 */
public Drawable loadUnbadgedItemIcon(PackageItemInfo itemInfo, ApplicationInfo appInfo) {
    if (itemInfo.showUserIcon != UserHandle.USER_NULL) {
        Bitmap bitmap = getUserManager().getUserIcon(itemInfo.showUserIcon);
        if (bitmap == null) {
            return UserIcons.getDefaultUserIcon(itemInfo.showUserIcon, /* light= */ false);
        }
        return new BitmapDrawable(bitmap);
    }
    Drawable dr = null;
    if (itemInfo.packageName != null) {
        dr = getDrawable(itemInfo.packageName, itemInfo.icon, appInfo);
    }
    if (dr == null) {
        dr = itemInfo.loadDefaultIcon(this);
    }
    return dr;
}
 
/**
 * @hide
 */
public Drawable loadUnbadgedItemIcon(PackageItemInfo itemInfo, ApplicationInfo appInfo) {
    if (itemInfo.showUserIcon != UserHandle.USER_NULL) {
        Bitmap bitmap = getUserManager().getUserIcon(itemInfo.showUserIcon);
        if (bitmap == null) {
            return UserIcons.getDefaultUserIcon(itemInfo.showUserIcon, /* light= */ false);
        }
        return new BitmapDrawable(bitmap);
    }
    Drawable dr = null;
    if (itemInfo.packageName != null) {
        dr = getDrawable(itemInfo.packageName, itemInfo.icon, appInfo);
    }
    if (dr == null) {
        dr = itemInfo.loadDefaultIcon(this);
    }
    return dr;
}
 
/**
 * @hide
 */
public Drawable loadUnbadgedItemIcon(PackageItemInfo itemInfo, ApplicationInfo appInfo) {
    if (itemInfo.showUserIcon != UserHandle.USER_NULL) {
        Bitmap bitmap = getUserManager().getUserIcon(itemInfo.showUserIcon);
        if (bitmap == null) {
            return UserIcons.getDefaultUserIcon(itemInfo.showUserIcon, /* light= */ false);
        }
        return new BitmapDrawable(bitmap);
    }
    Drawable dr = null;
    if (itemInfo.packageName != null) {
        dr = getDrawable(itemInfo.packageName, itemInfo.icon, appInfo);
    }
    if (dr == null) {
        dr = itemInfo.loadDefaultIcon(this);
    }
    return dr;
}
 
/**
 * @hide
 */
public Drawable loadUnbadgedItemIcon(PackageItemInfo itemInfo, ApplicationInfo appInfo) {
    if (itemInfo.showUserIcon != UserHandle.USER_NULL) {
        Bitmap bitmap = getUserManager().getUserIcon(itemInfo.showUserIcon);
        if (bitmap == null) {
            return UserIcons.getDefaultUserIcon(
                    mContext.getResources(), itemInfo.showUserIcon, /* light= */ false);
        }
        return new BitmapDrawable(bitmap);
    }
    Drawable dr = null;
    if (itemInfo.packageName != null) {
        dr = getDrawable(itemInfo.packageName, itemInfo.icon, appInfo);
    }
    if (dr == null) {
        dr = itemInfo.loadDefaultIcon(this);
    }
    return dr;
}
 
/**
 * @hide
 */
public Drawable loadUnbadgedItemIcon(PackageItemInfo itemInfo, ApplicationInfo appInfo) {
    if (itemInfo.showUserIcon != UserHandle.USER_NULL) {
        Bitmap bitmap = getUserManager().getUserIcon(itemInfo.showUserIcon);
        if (bitmap == null) {
            return UserIcons.getDefaultUserIcon(itemInfo.showUserIcon, /* light= */ false);
        }
        return new BitmapDrawable(bitmap);
    }
    Drawable dr = null;
    if (itemInfo.packageName != null) {
        dr = getDrawable(itemInfo.packageName, itemInfo.icon, appInfo);
    }
    if (dr == null) {
        dr = itemInfo.loadDefaultIcon(this);
    }
    return dr;
}
 
/**
 * @hide
 */
public Drawable loadUnbadgedItemIcon(PackageItemInfo itemInfo, ApplicationInfo appInfo) {
    if (itemInfo.showUserIcon != UserHandle.USER_NULL) {
        Bitmap bitmap = getUserManager().getUserIcon(itemInfo.showUserIcon);
        if (bitmap == null) {
            return UserIcons.getDefaultUserIcon(itemInfo.showUserIcon, /* light= */ false);
        }
        return new BitmapDrawable(bitmap);
    }
    Drawable dr = null;
    if (itemInfo.packageName != null) {
        dr = getDrawable(itemInfo.packageName, itemInfo.icon, appInfo);
    }
    if (dr == null) {
        dr = itemInfo.loadDefaultIcon(this);
    }
    return dr;
}
 
/**
 * @hide
 */
public Drawable loadUnbadgedItemIcon(PackageItemInfo itemInfo, ApplicationInfo appInfo) {
    if (itemInfo.showUserIcon != UserHandle.USER_NULL) {
        Bitmap bitmap = getUserManager().getUserIcon(itemInfo.showUserIcon);
        if (bitmap == null) {
            return UserIcons.getDefaultUserIcon(itemInfo.showUserIcon, /* light= */ false);
        }
        return new BitmapDrawable(bitmap);
    }
    Drawable dr = null;
    if (itemInfo.packageName != null) {
        dr = getDrawable(itemInfo.packageName, itemInfo.icon, appInfo);
    }
    if (dr == null) {
        dr = itemInfo.loadDefaultIcon(this);
    }
    return dr;
}
 
/**
 * @hide
 */
public Drawable loadUnbadgedItemIcon(@NonNull PackageItemInfo itemInfo,
        @Nullable ApplicationInfo appInfo) {
    if (itemInfo.showUserIcon != UserHandle.USER_NULL) {
        // Indicates itemInfo is for a different user (e.g. a profile's parent), so use a 
        // generic user icon (users generally lack permission to view each other's actual icons)
        int targetUserId = itemInfo.showUserIcon;
        return UserIcons.getDefaultUserIcon(
                mContext.getResources(), targetUserId, /* light= */ false);
    }
    Drawable dr = null;
    if (itemInfo.packageName != null) {
        dr = getDrawable(itemInfo.packageName, itemInfo.icon, appInfo);
    }
    if (dr == null && itemInfo != appInfo && appInfo != null) {
        dr = loadUnbadgedItemIcon(appInfo, appInfo);
    }
    if (dr == null) {
        dr = itemInfo.loadDefaultIcon(this);
    }
    return dr;
}
 
/**
 * @hide
 */
public Drawable loadUnbadgedItemIcon(PackageItemInfo itemInfo, ApplicationInfo appInfo) {
    if (itemInfo.showUserIcon != UserHandle.USER_NULL) {
        Bitmap bitmap = getUserManager().getUserIcon(itemInfo.showUserIcon);
        if (bitmap == null) {
            return UserIcons.getDefaultUserIcon(itemInfo.showUserIcon, /* light= */ false);
        }
        return new BitmapDrawable(bitmap);
    }
    Drawable dr = null;
    if (itemInfo.packageName != null) {
        dr = getDrawable(itemInfo.packageName, itemInfo.icon, appInfo);
    }
    if (dr == null) {
        dr = itemInfo.loadDefaultIcon(this);
    }
    return dr;
}
 
private String loadText(PackageItemInfo pii, int res, CharSequence nonLocalized)
        throws RemoteException {
    if (nonLocalized != null) {
        return nonLocalized.toString();
    }
    if (res != 0) {
        Resources r = getResources(pii);
        if (r != null) {
            try {
                return r.getString(res);
            } catch (Resources.NotFoundException e) {
            }
        }
    }
    return null;
}
 
/**
 * @hide
 */
public Drawable loadUnbadgedItemIcon(PackageItemInfo itemInfo, ApplicationInfo appInfo) {
    if (itemInfo.showUserIcon != UserHandle.USER_NULL) {
        Bitmap bitmap = getUserManager().getUserIcon(itemInfo.showUserIcon);
        if (bitmap == null) {
            return UserIcons.getDefaultUserIcon(
                    mContext.getResources(), itemInfo.showUserIcon, /* light= */ false);
        }
        return new BitmapDrawable(bitmap);
    }
    Drawable dr = null;
    if (itemInfo.packageName != null) {
        dr = getDrawable(itemInfo.packageName, itemInfo.icon, appInfo);
    }
    if (dr == null) {
        dr = itemInfo.loadDefaultIcon(this);
    }
    return dr;
}
 
源代码12 项目: android_9.0.0_r45   文件: IconDrawableFactory.java
public Drawable getBadgedIcon(PackageItemInfo itemInfo, ApplicationInfo appInfo,
        @UserIdInt int userId) {
    Drawable icon = mPm.loadUnbadgedItemIcon(itemInfo, appInfo);
    if (!mEmbedShadow && !needsBadging(appInfo, userId)) {
        return icon;
    }

    icon = getShadowedIcon(icon);
    if (appInfo.isInstantApp()) {
        int badgeColor = Resources.getSystem().getColor(
                com.android.internal.R.color.instant_app_badge, null);
        icon = mLauncherIcons.getBadgedDrawable(icon,
                com.android.internal.R.drawable.ic_instant_icon_badge_bolt,
                badgeColor);
    }
    if (mUm.isManagedProfile(userId)) {
        icon = mLauncherIcons.getBadgedDrawable(icon,
                com.android.internal.R.drawable.ic_corp_icon_badge_case,
                getUserBadgeColor(mUm, userId));
    }
    return icon;
}
 
@Override
protected List<AppInfo> doInBackground(Object... objects) {
  List<AppInfo> labelsPackages = new ArrayList<>();
  PackageManager packageManager = activity.getPackageManager();
  Iterable<ApplicationInfo> appInfos = packageManager.getInstalledApplications(0);
  for (PackageItemInfo appInfo : appInfos) {
    String packageName = appInfo.packageName;
    if (!isHidden(packageName)) {
      CharSequence label = appInfo.loadLabel(packageManager);
      Drawable icon = appInfo.loadIcon(packageManager);        
      if (label != null) {
        labelsPackages.add(new AppInfo(packageName, label.toString(), icon));
      }
    }
  }
  Collections.sort(labelsPackages);
  return labelsPackages;
}
 
@Override
protected List<AppInfo> doInBackground(Object... objects) {
  List<AppInfo> labelsPackages = new ArrayList<>();
  PackageManager packageManager = activity.getPackageManager();
  Iterable<ApplicationInfo> appInfos = packageManager.getInstalledApplications(0);
  for (PackageItemInfo appInfo : appInfos) {
    String packageName = appInfo.packageName;
    if (!isHidden(packageName)) {
      CharSequence label = appInfo.loadLabel(packageManager);
      Drawable icon = appInfo.loadIcon(packageManager);        
      if (label != null) {
        labelsPackages.add(new AppInfo(packageName, label.toString(), icon));
      }
    }
  }
  Collections.sort(labelsPackages);
  return labelsPackages;
}
 
源代码15 项目: weex   文件: LoadPackagesAsyncTask.java
@Override
protected List<AppInfo> doInBackground(Object... objects) {
  List<AppInfo> labelsPackages = new ArrayList<>();
  PackageManager packageManager = activity.getPackageManager();
  Iterable<ApplicationInfo> appInfos = packageManager.getInstalledApplications(0);
  for (PackageItemInfo appInfo : appInfos) {
    String packageName = appInfo.packageName;
    if (!isHidden(packageName)) {
      CharSequence label = appInfo.loadLabel(packageManager);
      Drawable icon = appInfo.loadIcon(packageManager);        
      if (label != null) {
        labelsPackages.add(new AppInfo(packageName, label.toString(), icon));
      }
    }
  }
  Collections.sort(labelsPackages);
  return labelsPackages;
}
 
源代码16 项目: Study_Android_Demo   文件: LoadPackagesAsyncTask.java
@Override
protected List<AppInfo> doInBackground(Object... objects) {
  List<AppInfo> labelsPackages = new ArrayList<>();
  PackageManager packageManager = activity.getPackageManager();
  Iterable<ApplicationInfo> appInfos = packageManager.getInstalledApplications(0);
  for (PackageItemInfo appInfo : appInfos) {
    String packageName = appInfo.packageName;
    if (!isHidden(packageName)) {
      CharSequence label = appInfo.loadLabel(packageManager);
      Drawable icon = appInfo.loadIcon(packageManager);        
      if (label != null) {
        labelsPackages.add(new AppInfo(packageName, label.toString(), icon));
      }
    }
  }
  Collections.sort(labelsPackages);
  return labelsPackages;
}
 
源代码17 项目: android-beacon-library   文件: BluetoothTestJob.java
/**
 * Returns the job id to be used to schedule this job.  This may be set in the
 * AndroidManifest.xml or in single process applications by using #setOverrideJobId
 * @param context
 * @return
 */
public static int getJobId(Context context) {
    if (sOverrideJobId >= 0) {
        LogManager.i(TAG, "Using BluetoothTestJob JobId from static override: "+
                sOverrideJobId);
        return sOverrideJobId;
    }
    PackageItemInfo info = null;
    try {
        info = context.getPackageManager().getServiceInfo(new ComponentName(context,
                BluetoothTestJob.class), PackageManager.GET_META_DATA);
    } catch (PackageManager.NameNotFoundException e) { /* do nothing here */ }
    if (info != null && info.metaData != null && info.metaData.get("jobId") != null) {
        int jobId = info.metaData.getInt("jobId");
        LogManager.i(TAG, "Using BluetoothTestJob JobId from manifest: "+jobId);
        return jobId;
    }
    else {
        throw new RuntimeException("Cannot get job id from manifest.  " +
                "Make sure that the BluetoothTestJob is configured in the manifest.");
    }
}
 
源代码18 项目: android-beacon-library   文件: ScanJob.java
private static int getJobIdFromManifest(Context context, String name) {
    PackageItemInfo info = null;
    try {
        info = context.getPackageManager().getServiceInfo(new ComponentName(context,
                ScanJob.class), PackageManager.GET_META_DATA);
    } catch (PackageManager.NameNotFoundException e) { /* do nothing here */ }
    if (info != null && info.metaData != null && info.metaData.get(name) != null) {
        int jobId = info.metaData.getInt(name);
        LogManager.i(TAG, "Using "+name+" from manifest: "+jobId);
        return jobId;
    }
    else {
        throw new RuntimeException("Cannot get job id from manifest.  " +
                "Make sure that the "+name+" is configured in the manifest for the ScanJob.");
    }
}
 
源代码19 项目: zxingfragmentlib   文件: LoadPackagesAsyncTask.java
@Override
protected List<AppInfo> doInBackground(Object... objects) {
  List<AppInfo> labelsPackages = new ArrayList<>();
  PackageManager packageManager = activity.getPackageManager();
  Iterable<ApplicationInfo> appInfos = packageManager.getInstalledApplications(0);
  for (PackageItemInfo appInfo : appInfos) {
    String packageName = appInfo.packageName;
    if (!isHidden(packageName)) {
      CharSequence label = appInfo.loadLabel(packageManager);
      Drawable icon = appInfo.loadIcon(packageManager);        
      if (label != null) {
        labelsPackages.add(new AppInfo(packageName, label.toString(), icon));
      }
    }
  }
  Collections.sort(labelsPackages);
  return labelsPackages;
}
 
源代码20 项目: BarcodeEye   文件: LoadPackagesAsyncTask.java
@Override
protected List<AppInfo> doInBackground(Void... objects) {
  List<AppInfo> labelsPackages = new ArrayList<AppInfo>();
  PackageManager packageManager = activity.getPackageManager();
  Iterable<ApplicationInfo> appInfos = packageManager.getInstalledApplications(0);
  for (PackageItemInfo appInfo : appInfos) {
    String packageName = appInfo.packageName;
    if (!isHidden(packageName)) {
      CharSequence label = appInfo.loadLabel(packageManager);
      Drawable icon = appInfo.loadIcon(packageManager);        
      if (label != null) {
        labelsPackages.add(new AppInfo(packageName, label.toString(), icon));
      }
    }
  }
  Collections.sort(labelsPackages);
  return labelsPackages;
}
 
/**
 * @hide
 */
public Drawable loadItemIcon(PackageItemInfo itemInfo, ApplicationInfo appInfo) {
    Drawable dr = loadUnbadgedItemIcon(itemInfo, appInfo);
    if (itemInfo.showUserIcon != UserHandle.USER_NULL) {
        return dr;
    }
    return getUserBadgedIcon(dr, new UserHandle(mContext.getUserId()));
}
 
/**
 * @hide
 */
public Drawable loadItemIcon(PackageItemInfo itemInfo, ApplicationInfo appInfo) {
    Drawable dr = loadUnbadgedItemIcon(itemInfo, appInfo);
    if (itemInfo.showUserIcon != UserHandle.USER_NULL) {
        return dr;
    }
    return getUserBadgedIcon(dr, new UserHandle(mContext.getUserId()));
}
 
/**
 * @hide
 */
public Drawable loadItemIcon(PackageItemInfo itemInfo, ApplicationInfo appInfo) {
    Drawable dr = loadUnbadgedItemIcon(itemInfo, appInfo);
    if (itemInfo.showUserIcon != UserHandle.USER_NULL) {
        return dr;
    }
    return getUserBadgedIcon(dr, new UserHandle(mContext.getUserId()));
}
 
/**
 * @hide
 */
public Drawable loadItemIcon(PackageItemInfo itemInfo, ApplicationInfo appInfo) {
    Drawable dr = loadUnbadgedItemIcon(itemInfo, appInfo);
    if (itemInfo.showUserIcon != UserHandle.USER_NULL) {
        return dr;
    }
    return getUserBadgedIcon(dr, new UserHandle(mContext.getUserId()));
}
 
/**
 * @hide
 */
public Drawable loadItemIcon(PackageItemInfo itemInfo, ApplicationInfo appInfo) {
    Drawable dr = loadUnbadgedItemIcon(itemInfo, appInfo);
    if (itemInfo.showUserIcon != UserHandle.USER_NULL) {
        return dr;
    }
    return getUserBadgedIcon(dr, new UserHandle(mContext.getUserId()));
}
 
/**
 * @hide
 */
public Drawable loadItemIcon(PackageItemInfo itemInfo, ApplicationInfo appInfo) {
    Drawable dr = loadUnbadgedItemIcon(itemInfo, appInfo);
    if (itemInfo.showUserIcon != UserHandle.USER_NULL) {
        return dr;
    }
    return getUserBadgedIcon(dr, new UserHandle(mContext.getUserId()));
}
 
/**
 * @hide
 */
public Drawable loadItemIcon(PackageItemInfo itemInfo, ApplicationInfo appInfo) {
    Drawable dr = loadUnbadgedItemIcon(itemInfo, appInfo);
    if (itemInfo.showUserIcon != UserHandle.USER_NULL) {
        return dr;
    }
    return getUserBadgedIcon(dr, new UserHandle(mContext.getUserId()));
}
 
/**
 * @hide
 */
public Drawable loadItemIcon(PackageItemInfo itemInfo, ApplicationInfo appInfo) {
    Drawable dr = loadUnbadgedItemIcon(itemInfo, appInfo);
    if (itemInfo.showUserIcon != UserHandle.USER_NULL) {
        return dr;
    }
    return getUserBadgedIcon(dr, new UserHandle(getUserId()));
}
 
/**
 * @hide
 */
public Drawable loadItemIcon(PackageItemInfo itemInfo, ApplicationInfo appInfo) {
    Drawable dr = loadUnbadgedItemIcon(itemInfo, appInfo);
    if (itemInfo.showUserIcon != UserHandle.USER_NULL) {
        return dr;
    }
    return getUserBadgedIcon(dr, new UserHandle(mContext.getUserId()));
}
 
/**
 * @hide
 */
public Drawable loadItemIcon(PackageItemInfo itemInfo, ApplicationInfo appInfo) {
    Drawable dr = loadUnbadgedItemIcon(itemInfo, appInfo);
    if (itemInfo.showUserIcon != UserHandle.USER_NULL) {
        return dr;
    }
    return getUserBadgedIcon(dr, new UserHandle(mContext.getUserId()));
}
 
 类所在包
 类方法
 同包方法