zoukankan      html  css  js  c++  java
  • PackageManager(流量监控,安装,卸载,app信息)

    //1.获取一个包管理器。  
    PackageManager pm = getPackageManager();  
    //2.遍历手机操作系统 获取所有的应用程序的uid  
    List<ApplicationInfo> appliactaionInfos = pm.getInstalledApplications(0);  
    for(ApplicationInfo applicationInfo : appliactaionInfos){  
        int uid = applicationInfo.uid;    // 获得软件uid  
        //proc/uid_stat/10086  
        long tx = TrafficStats.getUidTxBytes(uid);//发送的 上传的流量byte  
        long rx = TrafficStats.getUidRxBytes(uid);//下载的流量 byte  
        //方法返回值 -1 代表的是应用程序没有产生流量 或者操作系统不支持流量统计  
    }  
    TrafficStats.getMobileTxBytes();//获取手机3g/2g网络上传的总流量  
    TrafficStats.getMobileRxBytes();//手机2g/3g下载的总流量  
      
    TrafficStats.getTotalTxBytes();//手机全部网络接口 包括wifi,3g、2g上传的总流量  
    TrafficStats.getTotalRxBytes();//手机全部网络接口 包括wifi,3g、2g下载的总流量  
    final PackageManager packageManager = getActivity().getPackageManager();//获取packagemanager   
    List< PackageInfo> pinfo = packageManager.getInstalledPackages(0);//获取所有已安装程序的包信息   
        if(pinfo != null){   
        for(int i = 0; i < pinfo.size(); i++){   
            String packName = pinfo.get(i).packageName;   
            Log.d("info", "-->"+packName);  
        }   
    }   
    Uri uri = Uri.fromFile(updateFile); //获取文件的Uri
    Intent installIntent = new Intent(Intent.ACTION_VIEW);
    installIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    installIntent.setDataAndType(uri,
                  "application/vnd.android.package-archive");//设置intent的数据类型
    startActivity(installIntent);
    有时候我们可能开发了多款软件,这时候我们需要在其中一款软件中启动另一款软件,这时候需要的方法如下:
    
        PackageManager pm = getPackageManager();
        Intent i = pm.getLaunchIntentForPackage("com.test.aaa");//获取启动的包名
        startActivity(i); 
    android中卸载指定包名的应用程序方法如下:
    
    Uri uri = Uri.parse("package:com.test.aaa");//获取删除包名的URI
    i.setAction(Intent.ACTION_DELETE);//设置我们要执行的卸载动作
    i.setData(uri);//设置获取到的URI
    startActivity(i);
    最后要记得在Manifest文件里增加权限:<uses-permission android:name="android.permission.DELETE_PACKAGES"/>
  • 相关阅读:
    PAT 甲级 1132 Cut Integer (20 分)
    AcWing 7.混合背包问题
    AcWing 9. 分组背包问题
    AcWing 5. 多重背包问题 II
    AcWing 3. 完全背包问题
    AcWing 4. 多重背包问题
    AcWing 2. 01背包问题
    AcWing 875. 快速幂
    AcWing 874. 筛法求欧拉函数
    AcWing 873. 欧拉函数
  • 原文地址:https://www.cnblogs.com/g-sheng/p/5454770.html
Copyright © 2011-2022 走看看