Android intent的resolveActivity和Package Manager

时间:2017-06-19 01:06:08

标签: android android-intent android-package-managers

要检查是否可以处理意图,请致电:

if (intent.resolveActivity(getPackageManager()) != null) {
  // start activity
}

问题 - 如果始终传递相同的getPackageManager(),为什么需要包管理器的参数?是否有可能通过不同包裹经理的情况?

1 个答案:

答案 0 :(得分:1)

程序包管理器就像一个注册表。它包含以下enter image description here

中给出的所有申请细节

这就是为什么你提供包管理器args来解决之前的意图。或者您也可以在触发intent之前使用选择器。在其他情况下,您可能想要检索不同的应用程序信息,然后您可以使用包管理器。