如何获取用户安装的所有应用程序?
问题描述:
我怎样才能获得用户安装的所有应用程序?如何获取用户安装的所有应用程序?
我想开发一种可呈现由用户安装的所有应用程序的应用程序,但
我不明白如何让他们。
使用getExternalStorageDirectory()
?
还是有其他方法?
答
试试这个:
final Intent intent= new Intent(Intent.ACTION_MAIN, null);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
final List mylist= context.getPackageManager().queryIntentActivities(intent, 0);
答
你可以得到所有关于安装PKG的信息:
ArrayList<PackageInfo> res = new ArrayList<PackageInfo>();
PackageManager pm = ctx.getPackageManager();
List<PackageInfo> packs = pm.getInstalledPackages(0);
for(int i=0;i<packs.size();i++) {
PackageInfo p = packs.get(i);
String description = (String) p.applicationInfo.loadDescription(pm);
String label= p.applicationInfo.loadLabel(pm).toString();
String packageName = p.packageName;
String versionName = p.versionName;
String versionCode = p.versionCode;
String icon = p.applicationInfo.loadIcon(pm);
//Continue to extract other info about the app...
}
注:添加此权限清单文件:
<uses-permission android:name="android.permission.GET_TASKS" />
我认为这是Android,通过该函数的名称?请给它加标签。在Windows机器上,在Mac机器上或在Symbian手机上,你所要求的内容是非常不同的。 – Amadan 2012-07-27 04:54:34
也许阅读这个问题 - 答案可能会帮助你http://stackoverflow.com/questions/2695746/how-to-get-a-list-of-installed-android-applications-and-pick-one-to-run – 2012-07-27 05:03:19