android获取手机安装软件

来源:互联网 发布:什么是店宝宝软件 编辑:程序博客网 时间:2024/06/10 03:13
/**获取所有安装软件
     * @author mickey
     * @param getSysPackages
     * @return
     */
    public ArrayList<PackagesInfo> getInstalledApps(boolean getSysPackages)
    {
        ArrayList<PackagesInfo> res = new ArrayList<PackagesInfo>();
        List<PackageInfo> packs = myContext.getPackageManager().getInstalledPackages(0);
        for (int i = 0; i < packs.size(); i++)
        {
            PackageInfo p = packs.get(i);
            if ((!getSysPackages) && (p.versionName == null))
            {
                continue;
            }
            PackagesInfo info = new PackagesInfo();
            info.setAppname(p.applicationInfo.loadLabel(myContext.getPackageManager()).toString());
            info.setPackgeName(p.packageName);
            info.setVersionCode(p.versionCode);
            info.setVersionName(p.versionName);
            info.setIcon(p.applicationInfo.loadIcon(myContext.getPackageManager()));
            res.add(info);
        }
        
        return res;
        
    }
    
    /**获取安装软件
     * @author mickey
     * @param getSysPackages
     * @return
     */
    public ArrayList<PackagesInfo> getInstalled(boolean getSysPackages)
    {
        ArrayList<PackagesInfo> res = new ArrayList<PackagesInfo>();
        List<PackageInfo> packs = myContext.getPackageManager().getInstalledPackages(0);
        for (int i = 0; i < packs.size(); i++)
        {
            PackageInfo p = packs.get(i);
            if ((!getSysPackages) && (p.versionName == null))
            {
                continue;
            }
            if((p.applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM)==0)
            {
                PackagesInfo info = new PackagesInfo();
                info.setAppname(p.applicationInfo.loadLabel(myContext.getPackageManager()).toString());
                String pyvalue = PinyinUtil.hanziToPinyin(p.applicationInfo.loadLabel(myContext.getPackageManager()).toString());
                info.setIndex(indeDeal(pyvalue));
                info.setPackgeName(p.packageName);
                info.setVersionCode(p.versionCode);
                info.setVersionName(p.versionName);
                info.setIcon(p.applicationInfo.loadIcon(myContext.getPackageManager()));
                res.add(info);
            }  
            
        }
        
        return res;
        
    }
原创粉丝点击