1
해당 URL에서 다운로드 할 이미지 세트가 있습니다. 누구든지 이러한 이미지의 캐싱을 진행하는 방법을 말할 수 있습니까? 회신 해주십시오.android에서 이미지 캐싱을 수행하는 방법
해당 URL에서 다운로드 할 이미지 세트가 있습니다. 누구든지 이러한 이미지의 캐싱을 진행하는 방법을 말할 수 있습니까? 회신 해주십시오.android에서 이미지 캐싱을 수행하는 방법
을 호출하여 내부 저장소 캐시 디렉토리를 확보 할 수 있습니다.이 저장소는 앱으로 저장하기 위해 독점적으로 사용되며 다른 사람이나 다른 앱에서 액세스 할 수 없습니다. getExternalCacheDir()
(이 경우 사용자가 액세스 할 수 있음)을 호출하여 외부 저장소 (SD 카드) 캐시 디렉토리를 가져올 수도 있습니다. 이것에 대한 자세한 내용은 Androids Data Storage 장에서 찾을 수 있습니다.
하고 다음을 수행 할 수있는 이미지를 저장 : 당신이 포장 할 수 있도록, 이것은 OOM 오류 (에서 OutOfMemory)을 일으킬 수 있으므로
URL url = new URL(url);
HttpURLConnection ucon = (HttpURLConnection) url.openConnection();
Bitmap image = Bitmap.decodeStream(ucon.getInputStream);
File cacheDir = getCacheDir();
File imageFile = new File(cahceDir, "downloadedImage.png");
FileOutputStream fos = new FileOutputStream(imageFile);
image.compress(Bitmap.CompressFormat.PNG, 100, fos);
fos.close();
fos.flush();
는 큰 이미지를 다운로드하는 방법에 대한주의하여 비트 맵 객체를 SoftReference 객체와 함께 사용하여이 오류를 방지합니다. 즉
SoftReference<Bitmap> softref = new SoftReference(image);
도와 주셔서 감사합니다. – Mathew