获取已安装应用的更多信息

时间:2013-11-20 10:54:38

标签: android android-intent package-managers

我知道在Android中,我可以调用getInstalledPackages(0) PackageManager API来获取设备上所有已安装的应用。

我想知道有没有办法或解决方法来使用Android SDK(即没有第三方库)获取已安装应用程序的发布者名称?

3 个答案:

答案 0 :(得分:0)

包含相关类的包,尤其是ApplicationInfo,没有公共接口(http://developer.android.com/reference/android/content/pm/package-summary.html)。所以我相信没有办法做到这一点。

答案 1 :(得分:0)

我认为没有直接的方法可以做到这一点。因为清单或源代码中的任何地方都没有该信息。

作为解决方法,您可以获取流程名称/包名称,并从Google play store查找发布商名称:

伪代码:

List<ApplicationInfo> appInfos = context.getPackageManager().getInstalledApplications(0);

for (ApplicationInfo appInfo : appInfos) {
    String processName = appInfo.processName; // Example: com.google.android.youtube
    String url = "https://play.google.com/store/apps/details?id=" + processName;
    // Fetch publisher name from web here
    ...
}

答案 2 :(得分:0)

我认为,没有Android API可以获取发布者的应用程序名称。您可以使用此第三方API从Play商店获取发行商的信息以及更多信息。

https://api.appmonsta.com/v1/stores/android/details/your-package-name.json?country=us

将API中的“您的软件包名称”替换为应用程序软件包名称。 首先,您必须向api.appmonsta.com注册才能运行此API。