ApplicationInfo和PackageInfo之间的区别?

Yur*_*ury 18 android android-package-managers

我有几个关于ApplicationInfo和PackageInfo类的一般问题.他们来了:

  1. 有人可以描述ApplicationInfo和PackageInfo之间的区别吗?
  2. 它们如何相互关联?
  3. 在哪些情况下使用ApplicationInfo以及何时使用PackageInfo?

感谢您的帮助!

编辑:

首先,在发布这样的问题之前,我已经阅读了官方文档并用Google搜索.以下是一些我不清楚的其他问题.对不起,也许我没有恰当地问他们:

  1. PackageInfo可以具有NULL值的ApplicationInfo对象.什么时候可能?(我想这与已卸载的软件包有关)
  2. ApplicationInfo包含应用程序的uid.PackageInfo可能没有uid(当ApplicationInfo为null时).

所以这些问题.我不明白这些联系.

小智 31

  1. 有人可以描述ApplicationInfo和PackageInfo之间的区别吗?

    PackageInfo代表整个AndroidManifest.xml.ApplicationInfo实际上是PackageInfo的字段/属性,仅引用应用程序标记.请参阅.

  2. 它们如何相互关联?

    正如我所提到的,ApplicationInfo实际上是PackageInfo的一个属性/字段,它本身恰好是一个复杂的对象,并且有自己的方法/字段.

  3. 在哪些情况下使用ApplicationInfo以及何时使用PackageInfo?

    要访问应用程序标记内可能与服务或活动或广播接收器相关的信息,我们使用ApplicationInfo.Data可以通过PackageInfo类中的其他字段/方法获取与AndroidManifest.xml的其余部分相关的数据.


Ran*_*Ran 3

PackageInfo包含ApplicationInfo( PackageInfo.applicationInfo)。

<application>包信息是清单文件中的所有信息,ApplicaitonInfo 是清单中标签的信息。

它们什么时候使用?这取决于您要查找哪些信息,或者您正在使用哪些 API 方法。