apk安装后删除sb卡里的apk安装包

来源:互联网 发布:tpshop 多商家版 源码 编辑:程序博客网 时间:2024/04/28 16:06

     项目有一个需求,就是我们在apk安装后就删除sb 卡里的apk安装包。我理了一下思路,

     1.遍历sb卡,查找出所有带“.apk”路径。

     2.再提取apk它的包名和现在运行包名对比。包名对上就删除。

     3.因为遍历sb卡时间太长,要用线程方法。

 new Thread(){         @Override public void run() {   try {                    fileName = ".apk";FileHelper fileHelper = new FileHelper();List<File> fileList =  fileHelper.findFile(fileName);  //file为APK整条路径  Context con=Update.this;PackageInfo info = Update.this.getPackageManager().getPackageInfo(con.getPackageName(), 0);    String packageNames = info.packageName;                  //得到正在运行的APK的包名for (int k=0;k<fileList.size();k++){   File file=fileList.get(k);   String spName=getApkPackName(file.getPath());              if(spName!=null && file!=null && file.isFile() && file.exists())                     { if(spName.equals(packageNames)){ file.delete();}     }}  }catch (Exception e) {             } }}.start();
private String getApkPackName(String path) {        PackageManager pm = Update.this.getPackageManager();              PackageInfo info = pm.getPackageArchiveInfo(p ath,                PackageManager.GET_ACTIVITIES);        if (info != null) {         ApplicationInfo appInfo = info.applicationInfo;            return appInfo.packageName;        }                return null;    }
fileHelper类
public  List<File> findFile(String fileName) {        File file = Environment.getExternalStorageDirectory();   //获取sd卡目录        File[] files = file.listFiles();        reFiles =new ArrayList<File>();        readFile(files,fileName);          return reFiles;     }        public void readFile( File[] files,String fileName){        if(files!=null && files.length>0){                        //遍历文件夹            for(int i=0;i<files.length;i++){                if(files[i].isDirectory()){                    readFile(files[i].listFiles(),fileName);                }else{                    if(files[i].getName().toLowerCase().endsWith(fileName))           //比较                    {                     reFiles.add(files[i]);                                        }                               }            }        }


0 0
原创粉丝点击