获取所有安装在手机上的应用软件的信息

来源:互联网 发布:淘宝联盟用微信公众号 编辑:程序博客网 时间:2024/04/29 18:29

http://bbs.csdn.net/topics/390126751


// 获取所有安装在手机上的应用软件的信息 ,并且获取这些软件里面的权限信息

        List<PackageInfo> packinfos = pm
                .getInstalledPackages(PackageManager.GET_UNINSTALLED_PACKAGES
                        | PackageManager.GET_PERMISSIONS);
        for (PackageInfo info : packinfos) {
            String[] premissions = info.requestedPermissions;
            if (premissions != null && premissions.length > 0) {
                for (String premission : premissions) {
                    if("android.permission.INTERNET".equals(premission)){
                        //System.out.println(info.packageName+"访问网络");
                        int uid = info.applicationInfo.uid;
                        long rx = TrafficStats.getUidRxBytes(uid);
                        long tx = TrafficStats.getUidTxBytes(uid);
                        if(rx<0||tx<0){
                            System.out.println(info.packageName + "没有产生流量");
                        }else{
                            System.out.println(info.packageName+"的流量信息:");
                        System.out.println("下载的流量"+Formatter.formatFileSize(this, rx));
                        System.out.println("上传的流量"+Formatter.formatFileSize(this,tx ));
                        }
                    }
                }
                System.out.println("---------");
            }
        }
0 0