如何获取每个已安装的应用程序/包的供应商名称?

时间:2012-04-04 22:36:19

标签: android

我正在为Android编写一个App,它会获取所有已安装应用及其详细信息的列表。我得到了我需要的大部分内容:

context.getPackageManager().getInstalledPackages(0);

我似乎无法弄清楚的是我可以获得创建包/ App的供应商的名称或ID。

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

我认为没有办法以编程方式访问该信息。事实上,我不认为供应商的名称存储在任何地方的apk文件中。在市场中显示为“开发者”的名称是与上传应用程序的Google帐户关联的名称。我认为这个值是由Market基础架构存储的,而不是应用程序本身。遗憾的是,目前没有公共API可以授予对Market数据的访问权限。

如果您不一定关注实际的人类可读名称,并且您的目标是能够以编程方式判断设备是否具有来自同一开发人员的多个应用程序,您可以从signature字段收集这些信息。在你可以从pm.getPackageInfo(String packageName, int flags);获得的PackageInfo对象中,我对此几乎没有经验,但我可能是不正确的。