如何从Android中清除所有Android应用程序缓存数据

如何从Android中清除所有Android应用程序缓存数据,android,Android,我正在搜索代码以清除android mobile中的所有缓存数据。我使用PackageManager和MethodAPI从android中清除缓存数据,但这将发生在单个应用程序缓存数据中 但是我希望所有的android应用程序缓存数据都应该是清晰的。对于一个应用程序缓存,试试这个 public static void deleteCache(Context context) { try { File dir = context.getCacheDir();

我正在搜索代码以清除android mobile中的所有缓存数据。我使用PackageManager和MethodAPI从android中清除缓存数据,但这将发生在单个应用程序缓存数据中


但是我希望所有的android应用程序缓存数据都应该是清晰的。

对于一个应用程序缓存,试试这个

public static void deleteCache(Context context) {
        try {
            File dir = context.getCacheDir();
            if (dir != null && dir.isDirectory()) {
                deleteDir(dir);
            }
        } catch (Exception e) {}
    }

    public static boolean deleteDir(File dir) {
        if (dir != null && dir.isDirectory()) {
            String[] children = dir.list();
            for (int i = 0; i < children.length; i++) {
                boolean success = deleteDir(new File(dir, children[i]));
                if (!success) {
                    return false;
                }
            }
        }
        return dir.delete();
    }
试试这个

public static void trimCache(Context context) {
    File dir = context.getCacheDir();
    if(dir!= null && dir.isDirectory()){
        File[] children = dir.listFiles();
        if (children == null) {
            // Either dir does not exist or is not a directory
        } else {
            File temp;
            for (int i = 0; i < children.length; i++) {
                temp = children[i];
                temp.delete();
            }
        }

    }

} 

我从onCreate方法调用了它,但它不工作,缓存数据仍然存在。你能分享你的活动类吗