标题很拗口...
最近做一个类似Launcher的App, 需要显示已经安装的App出来, 但是, 系统里面已经安装了很多的App, 总不能都显示出来吧? 参照google官方的Launcher, 得出类似的代码功能:
//这里的pm为获取到的PackageManager
final String TAG = "GetAllApps";
final Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);
List<ResolveInfo> aciInfos = pm.queryIntentActivities(mainIntent, 0);
for (ResolveInfo aciInfo:
aciInfos) {
Log.i(TAG, "ActivityName:" + aciInfo.loadLabel(pm));
}