Как получить изображение из URL и кэшировать его - PullRequest
0 голосов
/ 01 октября 2019

Я пытаюсь получить изображение из URL и обновить его до представления изображения. Но изображения не кэшируются и перезагружаются при прокрутке вниз, затем вверх

. Я использую следующую AsynkTask для обновления изображений до ImageView

public class GetImageTask extends AsyncTask<Void, Void, Bitmap> {

    private String url;
    private ImageView imageView = null;
    private CircleImageView circleImageView = null;

    public GetImageTask(String url, CircleImageView circleImageView) {
        this.url = url;
        this.circleImageView = circleImageView;
    }

    public GetImageTask(String url, ImageView imageView) {
        this.url = url;
        this.imageView = imageView;
    }


    @Override
    protected Bitmap doInBackground(Void... voids) {
        try {
            URL urlConnection = new URL(url);
            HttpURLConnection connection = (HttpURLConnection) urlConnection.openConnection();
            connection.setDoInput(true);
            connection.connect();
            InputStream inputStream = connection.getInputStream();
            return BitmapFactory.decodeStream(inputStream);
        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
        return null;
    }

    @Override
    protected void onPostExecute(Bitmap result) {
        super.onPostExecute(result);
        if(imageView != null)
            imageView.setImageBitmap(result);
        if (circleImageView != null)
            circleImageView.setImageBitmap(result);
    }
}

Но это не кэширует изображенияпожалуйста, предложите изменить для кэширования изображений

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...