[컴][안드로이드] 이미지 처리 방법

android 에서 image 를 처리하는 방법, 캐슁, 캐쉬, cache, caching 방법 / android image loader


ref. 1 에서 아래와 같은 내용을 알려준다. 예제 소스코드와 함께. 한글(번역: 용현택)로 번역한 글도 있으니 참고 하기 바란다.

Caching Bitmaps

Memory Cache

LRU Cache(LruCache class) 를 제공한다.
API Level 9 부터 garbage collector(GC) 가 soft/weak reference 를 수집하는데 좀 더 공격적이 되어서 이 녀석을 사용하는 것이 꽤나 비효과적이게 만든다. 그래서 WeakReference 나 SoftReference 의 사용을 권장하지 않는다고 한다.[ref. 2]
Memory Cache 의 구현을 간략하게나마 보고 싶다면 ref. 3 을 참고하자.(my source)

Disk Cache

Android source 에 있는 DiskCache 를 사용할 수 있다. DiskCache 에 대해서는 gallery 처럼 자주 DiskCache 를 이용해야 하는 일이 생긴다면, ContentProvider 를 사용하는 것이 훨씬 낫다고 한다.
Disk Cache 를 사용할 때는 당연한 이야기지만 permission 을 지정해 줘야 한다. 예를 들어 SD card 에 대한 permission 은 아래와 같다. 자세한 이야기는 ref. 4를 참고 하자.
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

그리고 DiskLruCache 의 사용예제는 ref. 5를 참고 하도록 하자.



Reference

  1. http://developer.android.com/training/displaying-bitmaps/index.html
  2. http://developer.android.com/training/displaying-bitmaps/cache-bitmap.html
  3. http://stackoverflow.com/questions/541966/how-do-i-do-a-lazy-load-of-images-in-listview/3068012#3068012
  4. http://developer.android.com/training/basics/data-storage/files.html
  5. http://stackoverflow.com/questions/10185898/using-disklrucache-in-android-4-0-does-not-provide-for-opencache-method

댓글 없음:

댓글 쓰기