首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Android >

Android获取全部安装APP信息

2012-08-29 
Android获取所有安装APP信息class PInfo {private String appname private String pname privat

Android获取所有安装APP信息
class PInfo { 
    private String appname = ""; 
    private String pname = ""; 
    private String versionName = ""; 
    private int versionCode = 0; 
    private Drawable icon; 
    private void prettyPrint() { 
        log(appname + "\t" + pname + "\t" + versionName + "\t" + versionCode + "\t"); 
    } 

 
private void listPackages() { 
    ArrayList<PInfo> apps = getInstalledApps(false); /* false = no system packages */ 
    final int max = apps.size(); 
    for (int i=0; i<max; i++) { 
        apps.get(i).prettyPrint(); 
    } 

 
private ArrayList<PInfo> getInstalledApps(boolean getSysPackages) { 
    ArrayList<PInfo> res = new ArrayList<PInfo>();         
    List<PackageInfo> packs = getPackageManager().getInstalledPackages(0); 
    for(int i=0;i<packs.size();i++) { 
        PackageInfo p = packs.get(i); 
        if ((!getSysPackages) && (p.versionName == null)) { 
            continue ; 
        } 
        PInfo newInfo = new PInfo(); 
        newInfo.appname = p.applicationInfo.loadLabel(getPackageManager()).toString(); 
        newInfo.pname = p.packageName; 
        newInfo.versionName = p.versionName; 
        newInfo.versionCode = p.versionCode; 
        newInfo.icon = p.applicationInfo.loadIcon(getPackageManager()); 
        res.add(newInfo); 
    } 
    return res;  

热点排行