如何将通过UrlImageViewHelper下载的图像保存到Android上的SD卡?

问题描述 投票:1回答:2

我正在使用UrlImageViewHelper库,它工作正常。它将图像缓存在内部存储上,这对我来说很糟糕,因为我有很多图像,如果我想缓存它们,那就太可怕了。如何保存这些下载的文件并将其存储在SD卡而不是内部存储中?

android urlimageviewhelper
2个回答
1
投票

请通过浏览器检查您的网址是否有效。如果图片大小很大,请使用占位符图片仍然显示您的网址,而不是加载图片可用,如下所示:

UrlImageViewHelper.setUrlDrawable(imageView, "http://example.com/image.png", R.drawable.placeholder);

0
投票

使用这个课程

public class DemoHelper {

    private static final String TAG = DemoMainActivity.TAG;

    public static class RemoteImageTask extends AsyncTask<Void, Void, Bitmap> {
        ImageView _image;
        String _imageSource;
        TaskCallback _callback;

        public RemoteImageTask(ImageView image, String imageSource) {
            this(image, imageSource, null);
        }

        public RemoteImageTask(ImageView image, String imageSource, TaskCallback callback) {
            _image = image;
            _imageSource = imageSource;
            _callback = callback;
        }

        protected Bitmap doInBackground(Void... params) {
            URL url;
            Bitmap bmp = null;
            try {
                url = new URL(_imageSource);
                bmp = BitmapFactory.decodeStream(url.openConnection().getInputStream());
            } catch (Exception ignored) {
                Log.e(TAG, "Exception", ignored);
            }

            return bmp;
        }

        protected void onPostExecute(Bitmap bmp) {
            _image.setImageBitmap(bmp);
            if (_callback != null)
                _callback.onTaskFinished(bmp);
        }
    }

    public interface TaskCallback {
        public void onTaskFinished(final Bitmap bmp);
    }
   }
© www.soinside.com 2019 - 2024. All rights reserved.