从URL加载图像并清除缓存

时间:2014-12-17 12:27:27

标签: android image url caching

我的图片有网址~website/image.jpg,当我上传新图片时,新图片位于~website/image.jpg?,使用?作为缓存清理工具(我认为)。

如果我在我的应用中加载了网址~website/image.jpg,我会得到旧图片。

使用时如何获取新图片(如使用'?'时的chrome中所示):

img.setImageBitmap( getBitmapFromURL( url ) );

使用方法

public static Bitmap getBitmapFromURL( String src ) {
    try {
        StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
        StrictMode.setThreadPolicy( policy );
        URL url = new URL( src );
        HttpURLConnection connection = ( HttpURLConnection ) url.openConnection();
        connection.setDoInput( true );
        connection.connect();
        InputStream input = connection.getInputStream();
        Bitmap myBitmap = BitmapFactory.decodeStream( input );
        return myBitmap;
    } catch ( IOException e ) {
        return null;
    }
}

1 个答案:

答案 0 :(得分:0)

添加connection.setInstanceFollowRedirects( true );并设置

URL url = new URL( url + "?" + new Random().nextInt() );

诀窍。除非int连续两次得到相同的值..