2014-07-12 59 views
0

所以我用毕加索加载一些图像和缓存它们像这样:Android Picaso - 如何不缓存未通过它下载的图像?

ImageView logo = (ImageView)findViewById(R.id.image_logo); 
    Picasso.with(VenueDetailsActivity.this).load(url).into(logo); 

不过,我有一个不应该被缓存其他图像。然而,似乎只要Picaso在应用程序的任何位置运行,它就会开始缓存所有图像,无论我是否使用Picaso加载。

我怎么能不使用缓存毕加索的某些图像?

**不毕加索设置你的应用程序的任何图像加载缓存,无论使用毕加索与否的**

我用它来下载的方法我的图像:

private class DownloadImageTask extends AsyncTask<String, Void, Bitmap> { 
    ImageView bmImage; 

    public DownloadImageTask(ImageView bmImage) { 
     this.bmImage = bmImage; 
    } 

    protected Bitmap doInBackground(String... urls) { 
     String urldisplay = urls[0]; 
     Bitmap mIcon11 = null; 
     try { 
      InputStream in = new java.net.URL(urldisplay).openStream(); 
      mIcon11 = BitmapFactory.decodeStream(in); 
     } catch (Exception e) { 
      Log.e("Error", e.getMessage()); 
      e.printStackTrace(); 
     } 
     return mIcon11; 
    } 

    protected void onPostExecute(Bitmap result) { 
     bmImage.setImageBitmap(result); 
    } 
} 

回答

0

如果您不想毕加索缓存图像您可以使用.skipMemoryCache()像这样:欲了解更多信息,您可以查看文档

Picasso.with(VenueDetailsActivity.this).load(url).skipMemoryCache().into(logo); 

here

+0

就像我说的,我甚至没有使用毕加索的图像,不需要缓存。我正在使用正常的方式下载图像。不过,我甚至用毕加索用.skipMemoryCache()方法试过了,但那也不起作用。 –

相关问题