public static synchronized void put(String url, Bitmap bitmap) {
   if (cache == null) return;
   Log.d("CACHE", "Aggiungo in RAM e in DISCO");
   String key = MD5.hash(url);
   BitmapMemoryCache.addBitmapToMemoryCache(key, bitmap);
   cache.diskCache.addBitmapToCache(key, bitmap);
 }
 public static synchronized Bitmap get(String url) {
   if (cache == null) return null;
   String key = MD5.hash(url);
   Bitmap bmp = BitmapMemoryCache.getBitmapFromMemCache(key);
   // se non c'è in RAM
   if (bmp == null) {
     // cerca nel disco rigido
     bmp = cache.diskCache.getBitmapFromDiskCache(key);
     // se non c'è nel disco rigido
     if (bmp == null) {
       Log.d("CACHE", "non c'è nè nel disco nè in RAM");
       // ritorna null
       return null;
     }
     // la aggiunge in RAM
     BitmapMemoryCache.addBitmapToMemoryCache(key, bmp);
     // ritorna la bitmap dal disco
     Log.d("CACHE", "ritorna bitmap da disco");
     return bmp;
   }
   // ritorna la bitmap dalla RAM
   Log.d("CACHE", "ritorna bitmap da RAM");
   return bmp;
 }