我知道我可以使用 PackageManager.queryIntentActivities() 来获取 ResolveInfo 对象的列表。但是,如果用户为特定操作(或文件类型)设置了默认应用程序怎么办。有没有办法在检索到的 ResolveInfo 对象中找到哪个应用程序被设置为默认操作。
提前致谢
我知道我可以使用 PackageManager.queryIntentActivities() 来获取 ResolveInfo 对象的列表。但是,如果用户为特定操作(或文件类型)设置了默认应用程序怎么办。有没有办法在检索到的 ResolveInfo 对象中找到哪个应用程序被设置为默认操作。
提前致谢
您可以使用onresolveActivity()
找出PackageManager
如果您调用startActivity()
. Intent
如果返回活动选择器,那么您知道有多个选择并且没有设置为首选应用程序,因此会出现一个选择器。另请注意,在美国的某些 HTC 设备上,对于某些Intent
结构,您将始终获得 HTC 提供的中介活动类——有关更多详细信息,请参阅此博客文章。