Android,访问或清除其他应用程序缓存

时间:2018-07-13 22:04:09

标签: java android caching

我正在尝试创建一个能够清除其他应用程序缓存的应用程序,但是我不知道该怎么做。有没有读取该信息的方法,或者我必须遍历所有应用程序目录?我写了一个示例,试图遍历所有应用程序并打开它们的目录,但是我无法创建其目录的File实例(也许我没有必要的权限):

 private void appsDirectories(){
        Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
        mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);
        List<ResolveInfo> pkgAppsList = mActivity.getPackageManager().queryIntentActivities( mainIntent, 0);
        Log.d("qui","qui");
        PackageManager m = mActivity.getPackageManager();
        PackageInfo p = null;
        String pathDir = "";
        for(ResolveInfo app : pkgAppsList){
            try {
                p = m.getPackageInfo(app.activityInfo.packageName, 0);
                pathDir = p.applicationInfo.dataDir;
            } catch (PackageManager.NameNotFoundException e) {
                e.printStackTrace();
            }
            File dir = new File(pathDir);
            File[] files = dir.listFiles();
            Log.d("qui", pathDir);
        }
    }

我该怎么办?

0 个答案:

没有答案