android获取已安装应用(App)列表 效果图 获取手机上已安装应用列表,将获取到的信息用集合返回,可以自己定义是否过滤系统应用,Appinfo是一个实体类,包含应用的名称包名图标icon等等/***获取手机已安装应用列表*@paramctx*@paramisFilterSystem是否过滤系统应用*@return*/publicstaticArrayList
getAllAppInfo(Contextctx,booleanisFilterSystem){ArrayListappBeanList=newArrayList<>();AppInfobean=null;PackageManagerpackageManager=ctx.getPackageManager();Listlist=packageManager.getInstalledPackages(0);for(PackageInfop:list){bean=newAppInfo();bean.setIcon(p.applicationInfo.loadIcon(packageManager));bean.setLabel(packageManager.getApplicationLabel(p.applicationInfo).toString());bean.setPackage_name(p.applicationInfo.packageName);intflags=p.applicationInfo.flags;//判断是否是属于系统的apkif((flags&ApplicationInfo.FLAG_SYSTEM)!=0&&isFilterSystem){//bean.setSystem(true);}else{appBeanList.add(bean);}}returnappBeanList;}AppinfopublicclassAppInfo{publicintuid;publicStringlabel;//应用名称publicStringpackage_name;//应用包名publicDrawableicon;//应用iconpublicAppInfo(){uid=0;label="";package_name="";icon=null;}publicintgetUid(){returnuid;}publicvoidsetUid(intuid){this.uid=uid;}publicStringgetLabel(){returnlabel;}publicvoidsetLabel(Stringlabel){this.label=label;}publicStringgetPackage_name(){returnpackage_name;}publicvoidsetPackage_name(Stringpackage_name){this.package_name=package_name;}publicDrawablegetIcon(){returnicon;}publicvoidsetIcon(Drawableicon){this.icon=icon;}} -全文完-