¿Cómo eliminar el caché de otras aplicaciones de nuestra aplicación para Android?

Estoy tratando de desarrollar una aplicación de Android que pueda borrar los datos de la caché de otras aplicaciones, intenté navegar por todos los blogs, pero ninguno de ellos funcionó para mí, puedo borrar la caché de mi aplicación con el siguiente código

File cache = getCacheDir();
            File appDir = new File(cache.getParent());
            if (appDir.exists()) 
            {
                String[] children = appDir.list();
                for (String s : children) 
                {
                    if (!s.equals("lib"))
                    {
                        deleteDir(new File(appDir, s));
                        Toast.makeText(DroidCleaner.this, "Cache Cleaned", Toast.LENGTH_LONG).show();
                        Log.i("TAG", "**************** File /data/data/APP_PACKAGE/" + s + " DELETED *******************");
                    }
                }
            }

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();
}

Mi código manifiesto

<uses-permission android:name="android.permission.CLEAR_APP_CACHE"/>

Probé el código en 2.2, 2.3 y 4.0

Y después de ver el post en el siguiente enlace.Android: ¿Borrar caché de todas las aplicaciones?

Cambié mi código a

PackageManager  pm = getPackageManager();
// Get all methods on the PackageManager
Method[] methods = pm.getClass().getDeclaredMethods();
for (Method m : methods) {
    if (m.getName().equals("freeStorage")) {
        // Found the method I want to use
        try {
            long desiredFreeStorage = 8 * 1024 * 1024 * 1024; // Request for 8GB of free space
        m.invoke(pm, desiredFreeStorage , null);
    } catch (Exception e) {
        // Method invocation failed. Could be a permission problem
    }
    break;
   }
}

Quiero borrar el caché de otras aplicaciones, ¿puede algún cuerpo ayudarme? Por favor, corríjame si me equivoco. Gracias de antemano.

Respuestas a la pregunta(3)

Su respuesta a la pregunta