Android中PackageManager使用详解

  说明: 获得已安装的应用程序信息 。可以通过getPackageManager()方法获得。 常用方法: public abstract PackageManager getPackageManager()

  功能:获得一个PackageManger对象 public abstract Drawable getApplicationIcon(String packageName)

  参数: packageName 包名

  功能:返回给定包名的图标,否则返回null

  public abstract ApplicationInfo getApplicationInfo(String packageName, int flags)

  参数:  packagename 包名

  flags 该ApplicationInfo是此flags标记,通常可以直接赋予常数0即可

  功能:返回该ApplicationInfo对象

  public abstract List getInstalledApplications(int flags)

  参数:  flag为一般为GET_UNINSTALLED_PACKAGES,那么此时会返回所有ApplicationInfo。我们可以对ApplicationInfo

  的flags过滤,得到我们需要的。

  功能:返回给定条件的所有PackageInfo

  public abstract List getInstalledPackages(int flags)

  参数如上

  功能:返回给定条件的所有PackageInfo

  public abstractResolveInfo resolveActivity(Intent intent, int flags)

  参数:   intent 查寻条件,Activity所配置的action和category

  flags: MATCH_DEFAULT_ONLY :Category必须带有CATEGORY_DEFAULT的Activity,才匹配

  GET_INTENT_FILTERS :匹配Intent条件即可

  GET_RESOLVED_FILTER :匹配Intent条件即可

  功能 :返回给定条件的ResolveInfo对象(本质上是Activity)

  public abstract List queryIntentActivities(Intent intent, int flags)

  参数同上

  功能 :返回给定条件的所有ResolveInfo对象(本质上是Activity),集合对象

  public abstract ResolveInfo resolveService(Intent intent, int flags)

  参数同上

  功能 :返回给定条件的ResolveInfo对象(本质上是Service)

  public abstract List queryIntentServices(Intent intent, int flags)

  参数同上

  功能 :返回给定条件的所有ResolveInfo对象(本质上是Service),集合对象