的更多信息,我知道在Android中,我可以調用API PackageManager的getInstalledPackages(0)
讓所有設備上的安裝的應用程序。獲取安裝的應用程序
我想知道是否有辦法或解決方法通過使用Android SDK中(即沒有第三方庫)來獲取安裝的應用程序的發佈者的名字?
的更多信息,我知道在Android中,我可以調用API PackageManager的getInstalledPackages(0)
讓所有設備上的安裝的應用程序。獲取安裝的應用程序
我想知道是否有辦法或解決方法通過使用Android SDK中(即沒有第三方庫)來獲取安裝的應用程序的發佈者的名字?
包含相關類,尤其是ApplicationInfo的包,還有就是這個沒有公共接口(http://developer.android.com/reference/android/content/pm/package-summary.html)。所以我相信沒有辦法做到這一點。
我覺得沒有直接的方法來做到這一點。因爲這些信息不提供清單或源代碼的任何地方。
作爲一種變通方法,你可以得到的進程名/包名,並從谷歌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
...
}